Part Number Hot Search : 
PE6807 C2625 MX7530JQ 5250A NCP5393 TC90L01N VNQ830M MHO41FBD
Product Description
Full Text Search
 

To Download SI2401FS08-EVB Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  rev. 1.1 2/06 copyright ? 2006 by silicon laboratories si2401-si3008 si2401/si3008 v.22 bis iso modem ? with l ow -c ost daa features applications description the si2401 isomodem ? is a complete, two-chip, 2400 bps modem integrating silicon la boratories? fourth-gen eration direct access arrangement (daa), which provides a globally-programmable telephone line interface with an unprecedented level of integration. available in two small packages, this compact solution eliminates the need for a separate dsp data pump, modem controller, codec, isolation transformer, relay, opto-isolators, and 2?4 wire hybrid. the si2401 provides conventional data formats at connect rates of up to 2400 bps with full-duplex operation over the public switched telephone network (pstn). this device is ideal for embedded modem applications due to its small size, minimal external component count, and low power consumption. functional block diagram data modem formats 2400 bps: v.22bis 1200 bps: v.22, v.23, bell 212a 300 bps: v.21, bell 103 fast connect and v.23 reversing sia and other security protocols 27 mhz clkin support caller id detection and decode uart with flow control integrated daa over 6000 v capacitive isolation parallel phone detection compliant with fcc, china, jate, and 31 other ptts line-in-use detection at command set support call progress support 3.3 v power lead-free and rohs-compliant packages set-top boxes point-of-sale atm terminals security systems medical monitoring power meters uart controller (at decoder, call progress) isolation interface control interface clock interface dsp (data pump) rxd txd reset cd/gpio2 int/gpio4 xout xtali si2401 cts ri/gpio5 to phone line si3008 u.s. patent #5,870,046 u.s. patent #6,061,009 other patents pending ordering information see page 66. pin assignments 1 2 3 4 5 6 7 8 16 15 14 13 12 11 10 9 clkin/xtali xtalo cts v d txd rxd reset gpio5/ri gpio1/eofr gpio2/cd gpio3/esc v a gnd gpio4/int/aout c1a c2a ignd c1b c2b cid rx dct qb 8 1 7 2 6 3 5 4 si3008 qe 9 vreg si2401
si2401/si3008 2 rev. 1.1
si2401/si3008 rev. 1.1 3 t able of c ontents section page 1. electrical specificat ions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4 2. typical application schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9 3. bill of materials: si2401/08 chipset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 4. functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 4.1. serial interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12 4.2. configurations and data rates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 4.3. low power modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 4.4. parallel phone dete ction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 4.5. interrupt detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 5 4.6. v.23 operation/v.23 reversing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 4.7. v.42 hdlc mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 4.8. fast connect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 4.9. clock generation subsystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 5. at command set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20 5.1. command line execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.2. end-of-line characte r . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.3. at command set description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21 5.4. alarm industry at commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 5.5. modem result codes and call progr ess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 6. low level dsp control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 6.1. dsp registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 7 6.2. call progress filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 7. s registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 8. pin descriptions: si2401 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 9. pin descriptions: si3008 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 10. ordering guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 11. package outline: 16-pin soic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 12. package outline: 8-pin exposed pad soic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 document change list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 contact information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .72
si2401/si3008 4 rev. 1.1 1. electrical specifications table 1. recommended operating conditions parameter 1 symbol test condition min 2 typ max 2 unit ambient temperature t a f-grade 0 25 70 c si2401 supply voltage, digital 3 v d 3.0 3.3 3.6 v notes: 1. the si2401 specifications are guaranteed when the typical application circuit (including component tolerance) and si2401 and si3008 are used. see "2. typical application schematic" on page 9. 2. all minimum and maximum specifications are guaranteed and apply across the recommended operating conditions. typical values apply at nominal supply voltages and an operating temperature of 25 c unless otherwise stated. 3. the digital supply, v d , operates from 3.0 to 3.6 v. the si2401 interface supports 5 v logic (clkin/xtali supports 3.3 v logic only). table 2. loop characteristics (v d = 3.0 to 3.6 v, t a = 0 to 70 c, see figure 1) parameter symbol test condition min typ max unit dc termination voltage v tr i l =20ma ? ? 7.5 v dc termination voltage v tr i l = 120 ma 9 ? ? v on-hook leakage current i lk v tr =?100v ? ? 12 a operating loop current i lp 15 ? 120 ma dc ring current dc current flowing through ring detection circuitry ?1.53a ring detect voltage * v rd 10 15 35 v rms ring frequency f r 15 ? 68 hz ringer equivalence number ren ? ? 0.2 *note: the ring signal is guaranteed to be undetected below the mi nimum. the ring signal is guaranteed to be detected above the maximum.
si2401/si3008 rev. 1.1 5 figure 1. test circuit for loop characteristics table 3. dc characteristics * (v d = 3.0 to 3.6 v, t a = 0 to 70c for f-grade ) parameter symbol test condition min typ max unit high level input voltage v ih 2.0 ? ? v low level input voltage v il ??0.8v high level output voltage v oh i o =?2ma 2.4 ? ? v low level output voltage v ol i o = 1 ma ? ? 0.35 v low level output voltage, gpio1?4 v ol i o =10ma ? ? 0.6 v input leakage current i l ?10 ? 10 a pullup resistance pins 5,7,11,14 r pu 50 100 200 k power supply current, digital i d v d pin ? 10 15 ma power supply curren t, dsp powerdown i d seb[3] = 1 ? 8 12 ma power supply current, wake-on-ring i d atz ? 7 10 ma power supply current, total powerdown i d sf1[5] =1, sf1[6] =1 ?100 ? a *note: measurements are taken with inputs at rails and no loads on outputs. ring si3008 v tr i l 600 10 f + ? tip
si2401/si3008 6 rev. 1.1 table 4. ac characteristics (v d = 3.0 to 3.6 v, t a = 0 to 70 c for k-grade, fs = 8 khz) parameter symbol test condition min typ max unit sample rate fs ? 8 ? khz clock input frequency f xtl default ? 4.9152 ? mhz clock input frequency f xtl < 10 k resistor between pin 11 and gnd ?27?mhz receive frequency response low ?3 dbfs corner ? 5 ? hz transmit full scale level 1 v fs ?1 dbm ? 0.98 ? v peak receive full scale level 1,2 v fs ?1 dbm ? 0.98 ? v peak dynamic range 3,4,5 dr i l = 100 ma ? 80 ? db dynamic range 3,4,5 dr i l =20ma ? 80 ? db transmit total harmonic distortion 5,6 thd i l =20ma ? 75 ? db dynamic range (caller id mode) 7 dr cid vin = 1 khz, ?13 dbm ? 50 ? db notes: 1. measured at tip and ring with 600 . termination at 1 khz, as shown in figure 1. 2. receive full-scale level produces ?0.9 dbfs. 3. dr = 20 x log (rms v fs /rms v in )+ 20 x log (rms v in /rms noise, excluding harmonics). v fs is the ?1 dbm full-scale level. 4. measurement is 300 to 3400 hz. applies to both transmit and receive paths. 5. v in = 1 khz, ?3 dbfs 6. thd = 20 x log (rms distortion / rms signal). 7. dr cid = 20 x log (rms v cid /rms v in )+ 20 x log (rms v in /rms noise). v cid is the 6 v full-scale level.
si2401/si3008 rev. 1.1 7 table 5. absolute maximum ratings parameter symbol value unit dc supply voltage v d 4.1 v input current, si2401 digital input pins i in 10 ma digital input voltage v ind ?0.3 to 5.3 v clkin/xtali input voltage v xind ?0.3 to (v d + 0.3) v operating temperature range t a ?10 to 100 c storage temperature range t stg ?40 to 150 c note: permanent device damage may occur if the absolute maximum ratings are exceeded. functional operation should be restricted to the conditions as specified in the operational sections of this data sheet. exposure to absolute maximum rating conditions for extended periods may affect device reliability.
si2401/si3008 8 rev. 1.1 figure 2. asynchronous uart seri al interface timing diagram table 6. switching characteristics (v d = 3.0 to 3.6 v, t a = 0 to 70 c for f-grade ) parameter symbol min typ max unit baud rate accuracy ?1 ? 1 % cts active to start bit t csb 10 ? ? ns reset pulse width t rl 1??m s reset to txd t rs 3??m s note: all timing is referenced to the 50% level of the waveform. input test levels are v ih =2.0v, v il =0.8v note: baud rates (programmed through register se0) are as follows: 300,1200, 2400, 9600, 19200, 38400, 115200, and 307200 hz. receive timing start rxd rxd 8-bit data mode (default) 9-bit data mode stop d0 d1 d2 d3 d4 d5 d6 d7 start stop d0 d1 d2 d3 d4 d5 d6 d7 d8 t csb t sbc cts transmit timing start start txd txd 8-bit data mode (default) 9-bit data mode stop stop d0 d1 d2 d3 d4 d5 d6 d7 d0 d1 d2 d3 d4 d5 d6 d7 d8 t rl reset t rs txd
si2401/si3008 rev. 1.1 9 2. typical application schematic gpio1/eofr gpio2/cd_ gpio3/esc gpio4/aout/int_ txd reset_ rxd cts_ gpio5/ri_ vdd tip ring external crystal option please submit layout to silicon labs for review prior to pcb fabrication. note: z1 can be replaced by an mov or mlv. ferrite beads are used for best emi performance. in some si tuations, r15/r16 can be r eplaced with 0 ohm resistors. no ground plane in daa section r1y q3 r13 c3 r5 r19 r1z c51 r2x c50 c1 q2 c9 r8 c2 r12 c41 c5 r2y r4 fb1 c11 r7 r21 r16 z1 r20 c40 c8 q1 c4 r1x r2z u1 si2401 xtali/clkin 1 xtalo 2 gpio5 3 vd 4 rxd 5 txd 6 cts 7 reset 8 c2a 9 c1a 10 gpio4 11 gnd 12 va 13 gpio3 14 gpio2 15 gpio1 16 - + d1 r10 r6 y1 1 2 fb2 rv1 r18 r15 u2 c1b 1 c2b 2 vreg 3 cid 4 rx 8 dct 7 ignd epad 9 qe 5 qb 6
si2401/si3008 10 rev. 1.1 3. bill of materials: si2401/08 chipset component value supplier(s) c1, c2 33 pf, y2, x7r, 20% panasonic, murata, vishay c3 10 nf, 250 v, x7r, 20% venkel, smec c4 1.0 f, 25 v, x7r, 20% venkel, smec c5, c50 0.1 f, 16 v, x7r, 20% venkel, smec c8, c9 680 pf, y2, x7r, 10% panasonic, murata, vishay c11 1 330 pf, 50 v, x7r, 20% venkel, smec c40, c41 2 33 pf, 16 v, npo, 5% venkel, smec c51 0.22 f, 16 v, x7r, 20% venkel, smec d1, d2 3 dual diode, 225 ma, 300 v, cmpd2004s central semiconductor fb1, fb2 ferrite bead, blm18ag601sn1b murata q1, q3 npn, 300 v, mmbta42 onsemi, fairchild q2 pnp, 300 v, mmbta92 onsemi, fairchild rv1 sidactor, 275 v, 100 a teccor, protek, st micro r1 4 205 , 1 w, 1% venkel, smec, panasonic r2 5 243 , 1 w, 1% venkel, smec, panasonic r4 3.9 k , 1/16 w, 5% venkel, smec, panasonic r5, r6 100 k , 1/16 w, 5% venkel, smec, panasonic r7, r8 6 10 m , 1/16 w, 5% venkel, smec, panasonic r10 1 k , 1/16 w, 5% venkel, smec, panasonic r12, r13 56 , 1/16 w, 1% venkel, smec, panasonic r15, r16 7 0 , 1/16 w venkel, smec, panasonic r18 1.5 m , 1/16 w, 5% venkel, smec, panasonic r19 180 k , 1/16 w, 5% venkel, smec, panasonic r20, r21 1 3m , 1/16 w, 5% venkel, smec, panasonic u1 si2401 silicon labs u2 si3008 silicon labs y1 2,8 4.9152 mhz, 20 pf, 100 ppm, 150 esr ecs inc., siward z1 9 dual zener diode, 20 v, 1/4 w vishay notes: 1. in applications that do not require caller id, c11, r20, and r21 can be removed. 2. in stb applications, c40, c41, and y1 can be removed by using the 27 mhz clock input feature. 3. several diode bridge configurations are acceptable. for ex ample, a single df04s or four 1n4004 diodes may be used. 4. three parallel 619 , 1/4 w, resistors may be used instead of r1. 5. three parallel 732 , 1/4 w, resistors may be used instead of r2. 6. the package size on r7 and r8 must be at least 0805. 7. murata blm18ag601sn1 may be substituted for r15?r16 (0 ) to decrease emissions. 8. to ensure compliance with itu specifications, frequency tolerance must be less than 100 ppm including initial accuracy, 5-year aging, 0 to 70 c, and capacitive loadin g. 50 ppm initial accuracy crystals typically satisfy this requirement. 9. two series zener diodes may be used instead of z1.
si2401/si3008 rev. 1.1 11 4. functional description the si2401 isomodem utiliz ing the si3008 line-side device is a complete embedded modem chipset with integrated direct access arrangement (daa). available in two small packages, this solution includes a dsp data pump, modem controller, on-chip ram and rom, codec, daa, analog output, and 27 mhz clock input. the modem accepts simple modem at commands and provides connect rates up to 2400 bps full-duplex over the public switched tele phone network (pstn) with v.42 hardware support through hdlc framing. to minimize handshake times, the si2401 can implement a v.22-based fast connect. the modem also supports the v.23 reversing protocol and standard alarm formats including sia. this device is ideal for embedded modem applications due to its flexibility, small fo otprint, and minimal external component count. the si2401 solution integrates a silicon daa using silicon lab oratories? proprietary fourth-generation daa technology. this highly- integrated daa can be programmed using the si3008 to meet international requirements and is compliant with fcc, jate, and other country-specific ptt specifications as shown in table 7. the si2401 is designed for rapid assimilation into existing modem applications. the device interfaces directly through a uart to a microcontroller. the si2401urt-evb evaluation boar d connects directly to a standard rs-232 or usb interface. this allows for evaluation of the modem immediately upon powerup via hyperterminal or any standard terminal software. in addition, the si2401 has been designed to meet the most stringent worldwide requirements for out-of-band energy, billing-tone immunity , high-voltage surges, and safety requirements. table 7. country-specific ptt specifications country argentina kyrgyzstan armenia macao bahamas mexico bangladesh moldova belarus new zealand 2 bermuda paraguay brunei peru canada puerto rico caribbean russia chile saudi arabia china singapore colombia south korea 3 costa rica sri lanka dominican republic taiwan ecuador thailand el salvador tunisia georgia uae guam ukraine hong kong uruguay india uzbekistan indonesia usa japan 1 venezuela kazakhstan vietnam kuwait yemen notes: 1. dcr exceeds 300 ; disclaimer required in product documentation. 2. 600 ac termination used; disclaimer required in product documentation. 3. additional components required to pass ringer impedance specifications.
si2401/si3008 12 rev. 1.1 4.1. serial interface the si2401 has a universal asynchronous receiver/ transmitter (uart) serial interface compatible with standard microcontroller serial interfaces. after powerup or reset, the speed of the serial (data terminal equipment?dte) interface is set by default to 2400 bps with the 8-bit, no parity, and one-stop bit (8n1) format described below. the serial interface dte rate can be modified by writing se0[2:0] (sd) with the value corresponding to the desired dte rate. (see table 9.) this is accomplished with the command, atse0=xx, where xx is the hexadecimal value of the se0 register. immediately after the atse0=xx string is sent, the host uart must be reprogrammed to the new dte rate in order to communicate with the si2401. the carriage return character following the atse0=xx string must be sent at the new dte rate to observe the ?o? response code. see table 12 on page 20 for the response code summary. 4.2. configurations and data rates the si2401 can be configured to any of the bell and ccitt operation modes listed in table 10. when configured for v.22bis, the modem connects at 1200 bps if the far end modem is configured for v.22. this device also supports sia and other protocols for the security industry. table 8 provides the modulation method, carrier frequencies, data rate, baud rate, and notes on standard compliance for each modem configuration of the si2401. table 10 shows example register settings (s07) for some of the modem configurations. table 8. selectable configurations configuration modulation carrier frequency (hz) data rate (bps) standard compliance v.21 fsk 1080/1750 300 full v.22 * dpsk 1200/2400 1200 full v.22bis * qam 1200/2400 2400 no retrain v.23 fsk 1300/2100 1200/75 full; plus reversing (europe) v.23 1300/1700 600/75 bell 103 fsk 1170/2125 300 full bell 212a dpsk 1200/2400 1200 full security dtmf ? 40 full sia?pulse pulse ? low full sia format fsk 1170/2125 300 half-duplex 300 bps only *note: the si2401 only adjusts its dce rate from 2400 bps to 12 00 bps if it is connecting to a v.22-only (1200 bps only) modem. since the v.22bis specification does not outline a fallback procedure, the host should implement a fallback mechanism consisting of hanging up and connecting at a lower baud rate. retraining to accommodate changes in line conditions that occur during a call must be implemented by terminating the call and redialing. table 9. dte rates dte rate (bps) se0[2:0] (sd) 300 000 1200 001 2400 010 9600 011 19200 100 38400 101 115200 110 307200 111
si2401/si3008 rev. 1.1 13 as shown in figure 3, 8-bit and 9-bit data modes refer to the dte format over the uart. line data formats are configured through registers s07 (mf1) and s15 (mlc). if the number of bits specified by the format differs from the number of bits specified by the dce data communications equipment or line (dte) format, the msbs are either dropped or bit-stuffed, as appropriate. for example, if the dte format is 9 data bits (9n1) and the line data format is 8 data bits (8n1), the msb from the dte is dropped as the 9-bit word is passed from the dte side to the dce (line) side. in this case, the dropped ninth bit can then be used as an escape mechanism. however, if the dte format is 8n1 and the line data format is 9n1, an msb equal to 0 is added to the 8-bit word as it is passed from the dte side to the dce side. the si2401 uart does not continuously check for stop bits on the incoming digital data. therefore, if the txd pin is not high, the rxd pin may echo meaningless characters to the host uart. this requires the host uart to flush its receiver fifo upon initialization. figure 3. link and line data formats 4.2.1. command/data mode upon reset, the modem is in command mode and accepts at-style commands. an outgoing modem call can be made using the ?atdt#? (tone dial) or ?atdp#? (pulse dial) command after the device is configured. if the handshake is successful, the modem responds with the ?c?, ?d?, or ?v? string and enters data mode. (the byte following the ?c?, ?d?, or ?v? is the first data byte.) at this point, at-style commands are not accepted. there are three methods that may be used to return the si2401 to command mode: use the esc pin?to program the gpio3 pin to function as an escape input, set gpio3 se2[5:4] = 11. in this setting, a positive edge detected on this pin returns the modem to command mode. the ?ato? string can be used to reenter data mode. use 9-bit data mode?if 9-bit data format with escape is programmed, a 1 detected on bit 9 returns the modem to command mode. (see figure 2 on page 8.) this is enabled by setting se0[3] (nd) = 1 and s15[0] (nbe) = 1. the ato string can be used to reenter data mode. nin th bit escape does not work in the security modes. use ?+++??the escape sequence is a sequence of three escape characters that are set in s-register s0f (?+? characters by default). if the isomodem ? chipset detects the ?+++? sequence and detects no activity on the uart befo re or after the ?+++? sequence for a time period set by s-register s10, it returns to command mode. to disable this escape sequence, set s-register s10=ff. to remove the time-dependent behavior, set s-register s10=00. whether using an escape method or not, when the carrier is lost, the mode m automatically returns to command mode and reports ?n?. 4.2.2. 8-bit data mode (8n1) 8-bit data mode is the default mode after powerup or reset and is set by se0[3] (nd) = 0 b . it is asynchronous, full duplex, and uses a total of 10 bits including a start bit (logic 0), eight data bits, and a stop bit (logic 1). data received from the remote modem is transferred from the si2401 to the host on the rxd pin. data transfer to the host begins when the si2401 asserts a logic 0 start bit on rxd. data is shifted out of the si2401 lsb first at the dte rate determined by the se0[2:0] (sd) setting and terminates with a stop bit. data from the host for transmission to th e remote modem is shifted to the si2401 on txd beginning with a start bit, lsb first at the dte rate determined by the se0[2:0] setting and terminates with a stop bit. table 10. modem configuration examples (s07[7] (hden) = 0, s07[6] (bd) = 0) modem protocol register s07 values v.22bis 0x06 v.22 0x02 v.21 0x03 bell 212a 0x00 bell 103 0x01 v.23 (1200 tx, 75 rx) 0x14 v.23 (75 tx, 1200 rx) 0x24 v.23 (600 tx, 75 rx) 0x10 v.23 (75 tx, 600 rx) 0x20 dte interface data rate: se0[2:0] (sd) data format: se0[3] (nd) dce (line) interface data rate: s07 (mf1) data format: s15 (mlc) si3008 si2401 rj11 txd rxd
si2401/si3008 14 rev. 1.1 after the middle of the stop bit time, the si2401 begins looking for a logic 1 to logic 0 transition signaling the start of the next character on txd to be sent to the line (remote modem). 4.2.3. 9-bit data mode (9n1) the 9-bit data mode is set by se0[3] (nd) = 1. it is asynchronous, full duplex, and uses a total of 11 bits including a start bit (logic 0), 9 data bits, and a stop bit (logic 1). data received from the line (remote modem) is transferred from the si2401 to the host on the rxd pin. data transfer to the host begins when the si2401 asserts a logic 0 start bit on rxd. data is shifted out of the si2401 lsb first at the dte rate determined by the se0[2:0] (sd) setting and te rminates with a stop bit. data from the host for transmission to the line (remote modem) is shifted to the si2401 on txd beginning with a start bit (lsb first at the dte rate determined by the s-register se0[2:0] (sd) setting) and terminates with a stop bit. after the middle of the stop bit time, the si2401 begins looking for a logic 1 to logic 0 transition signaling the start of the next character on txd to be sent to the line (remote modem). the ninth data bit may be used to indicate an escape by setting s15[0] (nbe) = 1. in this mode, the ninth data bit is normally set to 0 when the modem is online. when the ninth data bit is set to 1, the modem goes offline into command mode, and the next frame is interpreted as an at command. data mode can be reentered using the ato command. 4.2.4. flow control no flow control is needed if the dte rate and dce rate are the same. if the serial link (dte) data rate is set higher than the line (dce) rate of the modem, flow control is required to prevent loss of data to the transmitter. to control data flow, the clear-to-send (cts) pin is used. when cts is asserted, the si2401 is ready to accept a character. while cts is negated, no data should be sent to the si2401 on txd. to simplify flow control, the si2401 has an integrated ten character transmit fifo and allows for two different cts reporting methods. by default, the cts pin is negated as soon as a start bit is detected on the txd pin and remains negated until the modem is ready to accept another character (see figure 2 on page 8.) by setting sfc7[7]=1 (ctsm), cts is negated when the fifo is 70% full and is reasserted when the fifo is 30% full. 4.3. low power modes the si2401 has three low-power modes: dsp powerdown. the dsp processor can be powered down by setting register seb[3] (pdde) = 1. in this mode, the serial in terface still functions, and the modem detects ringing and intrusion. however, no modem modes or tone detection features function. wake-up-on-ring. by issuing the atz command, the si2401 goes into a low-power mode where both the microcontroller and dsp are powered down. only an incoming ring, a low txd signal, or a total reset will power up the chip again. return from wake-on-ring triggers the int pin if s09[6] (wor) = 1 (wor = 0 b by default). total powerdown. setting sf1[5] = 1 and sf1[6] = 1 places the si2401 into a total powerdown mode. all logic is powered down including the crystal oscillator and clock-out pin. only a hardware reset can restart the si2401. 4.4. parallel phone detection the isomodem ? chipset is able to detect when another telephone, modem, or other device is using the phone line. this allows the host to avoid interrupting another phone call when the phone line is already in use and to intelligently handle an interruption when the isomodem chipset is using the phone line. 4.4.1. on-hook intrusion detection when the isomodem chipset is sharing the telephone line with other devices, it is im portant that it not interrupt a call in progress. to detect when another device is using the shared telephone line, the host can use the isomodem chipset to monitor the tip-ring dc voltage with the lvs[7:0] bits (sdb). the lvs[7:0] bits have a resolution of 1 v per bit with an accuracy of approximately 10%. bits 0 th rough 6 of this 8-bit signed 2s complement number indicate the value of the line voltage, and the sign bit (bit 7) indicates the polarity of tip and ring. when all devices on a particular telephone line are on- hook, there is no loop current flowing through tip and ring. therefore, the voltage across tip and ring is at a maximum. (on most telephone lines, this on-hook voltage is a minimum of 40 v.) once a device goes off- hook, current flows through tip and ring on that device, and the tip-ring voltage drops appreciably. (on most telephone lines, this off-hook voltage is a maximum of 20 v.) if the host checks the tip-ring voltage via lvs before causing the isomodem chipset to dial out or go off- hook, the host can determine if another device is using the telephone line. one way to do this is to verify that the voltage represented in lvs is above some fixed threshold, such as 30 v.
si2401/si3008 rev. 1.1 15 4.4.2. off-hook intrusion detection after it is determined that it is safe to use the phone line without interrupting a call, the host can instruct the isomodem chipset to begin a call or go off-hook. however, once the call has begun and the isomodem chipset is in data mode, the serial port is used for modem data, making it difficult for the host to monitor registers. therefore, when the isomodem chipset is off- hook, an algorithm is implemented to automatically monitor the tip-ring loop current via the lcs register (sf3). because the tip-ring voltage drops significantly when off-hook, tip-ring current is a better indicator of another device using the phone line. the lcs[7:0] bits have a resolution of 1.1 ma per bit. an lcs register value of 0x00 indicates that less than the required loop current is present, and a value of 0xff indicates excessive current draw. the user can read these bits directly through the lcs register. upon detecting an intrusion, an "i" result code is sent to the host if it is in the call negotiation stage or command mode. otherwise, the modem can be programmed to generate an interrupt to notify the host of the intrusion. the off-hook intrusion algorithm monitors the value of lcs (sf3) at a sample rate determined by the dgsr (sdf, bits 6:0) register (40 ms units). the algorithm compares each lcs sample to the reference value in the acl register (s12). if lcs is lower than acl by an amount greater than dcl (s11, bits 4:0), the algorithm waits for another lcs sample, and if the next lcs sample is also lower than acl by an amount greater than dcl, an interrupt occurs. this helps the isomodem chipset avoid a false parallel phone detection (ppd) interrupt due to glitches on the phone line. the acl is continually updated with the value of lcs as outlined below. the algorithm can be outlined as follows: if lcs(t)=lcs(t?40msxdgsr) and lcs(t) ? acl > dcl then acl = lcs(t) if (acl?lcs[t?40msxdgsr]) > dcl) and (acl ? lcs[t]) > dcl), an intrusion is sent to the host. the very first sample of lcs the algorithm uses after going off-hook does not have any previous samples for comparison. if lcs was measured during a previous call, this value of lcs may be used as an initial reference. acl may be writt en by the host with this known value of lcs. if acl is non-zero, the isomodem chipset uses acl as the first valid lcs sample in the off-hook intrusion algorithm. if acl is 0 (default after reset), the isomodem chipset ignores the register and does not begin operating th e algorithm until two lcs samples have been received. additionally, immediately after a modem call, acl is updated automatically with the last valid lcs value before a parallel phone detection (ppd) intrusion or going back on-hook. the off-hook intrusion algorithm does not begin to operate immediately after go ing off-hook. this is to avoid triggering an interrupt due to transients resulting from the isomodem chipset itself going from on-hook to off-hook. the time that elapses between the isomodem chipset going off-hook and the intrusion algorithm starting defaults to one second and may be adjusted via the ist register (s82, bits 7:4). if acl is written to a non-zero value before going off-hook, a parallel phone intrusion that occurs during this ist interval and sustains through the end of the interval triggers an interrupt.7 the off-hook intrusion algorithm may, additionally, be disabled for a period of time after dialing begins via the ib register (s82, bits 2:1). this avoids triggering an interrupt due to pulse dialing, open-switch intervals, or line transients from central office switching. intrusion may be disabled from the start of dialing to the end of dialing (ib = dl b ), from the start of dialing to the timeout of the is (s29, bits 7:0) by setting ib = 10 b (ib = 2) or from the start of dial to ca rrier detect by setting ib = 11. the off-hook intrusion algorithm is only suspended (not disabled) during this ib interv al. therefore, any intrusion that occurs during the ib interval and sustains through the end of the interval triggers a ppd interrupt. 4.5. interrupt detection the int interrupt pin can be programmed to alert the host of loss-of-carrier, loss-of-phone-line voltage/ current, parallel phone detection, and other interrupts listed in the interrupt status mask (s08). after the host receives an interrupt via the int pin, the host should issue the at:i command. this command causes a read- clear of the wor, ppd, nld, ri, ocd, and rev bits of the s09 register and rais es (deactivates) the int pin. all the interrupt status bits in register s09 remain high after being set until cleared by the at:i command. 4.5.1. loop current detection in addition to monitoring parallel phone intrusion, it is possible to monitor the loss of loop current. this feature can be enabled by setting s08[4] (nldm) = 1. this feature is disabled by default. if the loop current is too low for normal daa operation, s09[4] (nld) is set. during this event, if the nlr result code is enabled by setting s62[1](nlr) = 1, the ?l? result code is sent. once the loop current returns to a normal current state, the ?l?
si2401/si3008 16 rev. 1.1 result code is sent. the int pin is also asserted if enabled. 4.5.2. loss-of-carrier detection the si2401 has two methods of implementing a loss-of- carrier function. if gpio4 is programmed as int and if s08[7](cdm) = 1, int asserts in data mode when a loss-of-carrier is detected. the carrier detect function may also be implemented on gpio2 by setting se2[3:2] (gpio2) = 01 and soc[7](cde) = 1. 4.5.3. caller id decoding operation the si2401 supports full caller id detection and decode for us bellcore and uk standards. to use the caller id decoding feature, the following configuration is necessary: 1. set se0[3] (nd) = 0 b (set modem to 8n1 configuration). 2. set s0c[6:5] (cidm) = 01 (set modem to bellcore type caller id) or s13[2] (cidb) = 1 (set modem to uk type caller id). 4.5.4. caller id moni tor/bellcore caller id the si2401 continuously monitors the phone line for the caller id mark signals. this can be useful in systems that require detection of caller id data before the ring signal, voice mail indicator signals, and type ii caller id monitor support. to force the si2401 into caller id monitor mode, set soc[6:5] (cidm) = 11. note: cidm should be disabled before going off-hook. 4.5.5. uk caller id operation the si2401 starts searching for the idle state tone alert signal. when this signal has been detected, the si2401 transmits an ?a? to the host. after the idle state tone alert signal is completed, the si2401 applies the wetting pulse for the required 15 ms by quickly going off-hook and on-hook. from this point on, the algorithm is identical to that of bellcor e in that it searches for the channel seizure signal and the marks before echoing an ?m? and then reports the decoded caller id data. 4.6. v.23 operation/v.23 reversing the si2401 supports full v.23 operation including the v.23 reversing procedure. v.23 operation is enabled by setting s07 (mf1) = xx10xx00 b or xx01xx00 b . if s07[5] (v23r) = 1, the si2401 transmits data at 75 bps and receives data at 600 or 1200 bps. if s07[4] (v23t) = 1, the si2401 receives data at 75 bps and transmits data at 600 or 1200 bps. s07[2] (baud) is the 1200 or 600 bps indicator. baud = 1 enables the 1200/600 v.23 channel to run at 1200 bps, while baud = 0 b enables 600 bps operation. when a v.23 connection is su ccessfully established, the modem responds with a ?c? character if the connection is made with the modem transmitting at 1200/600 bps and receiving at 75 bps. the modem responds with a ?v? character if a v.23 connection is established with the modem transmitting at 75 bps and receiving at 1200/ 600 bps. the si2401 supports the v.23 turnaround procedure. this allows a modem that is transmitting at 75 bps to initiate a ?turnaround? procedure so that it can begin transmitting data at 1200/600 bps and receiving data at 75 bps. the modem is defin ed as being in v.23 master mode if it is transmitting at 75 bps, and it is defined as being in slave mode if the modem is transmitting at 1200/600 bps. the following paragraphs give a detailed description of the v.23 turnaround procedure. 4.6.1. modem in master mode to perform a direct turnaround once a modem connection is established, the master host goes into online command mode by sending an escape command (escape pin activation, ties, or ninth bit escape) to the master modem. note: the host can initiate a turnaround only if the si2401 is the master. the host then sends the atro command to the si2401 to initiate a v.23 turnaround and return to the online (data) mode. the si2401 then changes its carrier frequency (from 390 hz to 1300 hz) and waits to detect a 390 hz carrier for 440 ms. if the modem dete cts more than 40 ms of a 390 hz carrier in a time windo w of 440 ms, it echoes the ?c? response character. if the modem does not detect more than 40 ms of a 390 hz carrier in a time window of 440 ms, it hangs up and echoes the ?n? (no carrier) character as a response. 4.6.2. modem in slave mode configure gpio4 as int (se2[7:6] [gpio4] = 11). the si2401 performs a reverse turnaround when it detects a carrier drop longer than 20 ms. the si2401 then reverses (changes its carrier from 1300 hz to 390 hz) and waits to detect a 1300 hz carrier for 400 ms. if the si2401 detects more than 40 ms of a 1300 hz carrier in a time window of 400 ms, it sets the s09[7] bit, and the next character echoed by the si2401 is a ?v?. if the si2401 does not detect more than 40 ms of the 1300 hz carrier in a time window of 400 ms, it reverses again and waits to detect a 390 hz carrier for 440 ms. then, if the si2401 detects more than 40 ms of a 390 hz carrier in a time window of 220 ms, it sets the s09[7] bit, and the next character echoed by the si2401 is a ?c?. at this point, if the si24 01 does not detect more than 40 ms of the 390 hz carrier in a time window of 440 ms, it hangs up, sets the s09[7] bit, and the next character
si2401/si3008 rev. 1.1 17 echoed by the si2401 is an ?n? (no carrier). successful completion of a turnaround procedure in master or slave mode automatically updates s07[4] (v23t) and s07[5] (v23r) to indicate the new status of the v.23 connection. to avoid using the int pin, the host may also be notified of the int condition by using 9-bit data mode. setting s15[0] (nbe) = 1 and s0c[3] (9bf) = 0 b configures the ninth bit on the si2401 txd path to function exactly as the int pin has been described. 4.7. v.42 hdlc mode the si2401 supports v.42 through hardware hdlc framing in all modem data modes. frame packing and unpacking including opening and closing flag generation and detection, crc computation and checking, zero insertion and deletion, and modem data transmission and reception are all performed by the si2401. v.42 error correction and v.42bis data compression must be performed by the host. the digital link interface in this mode uses the same uart interface (8-bit data and 9-bit data formats) as in the asynchronous modes, and the ninth data bit may be used as an escape by setting s15[0] (nbe) = 1. when using hdlc in 9-bit data mode, if the ninth bit is not used as an escape, it is ignored. to use the hdlc feature on the si2401, the host must enable hdlc operation by setting s13[1] (hden) = 1. the host may initiate the call or answer the call using either the ?atdt#?, the ?ata? command or the auto- answer mode. (the auto-answer mode is implemented by setting register s00 (nr) to a non-zero value.) when the call is connected, a ?c?, ?d?, or ?v? is echoed to the host controller. the host may now send/receive data across the uart using either the 8-bit or 9-bit data formats with flow control. at this point, the si2401 begins framing data into the hdlc format. on the transm it side, if no data is available from the host, the hdlc flag pattern is sent repeatedly. when data is available, the si2401 computes the crc code throughout the frame, and the data is sent with the hdlc zero-bit insertion algorithm. hdlc flow control operates in a manner similar to normal asynchronous flow control across the uart and is shown in figure 4. to operate flow control (using the cts pin to indicate when the si2401 is ready to accept a character), a dte rate higher than the line rate should be selected. the method of transmitting hdlc frames is as follows: 1. after the call is connect ed, the host should begin sending the frame data to the si2401 using the cts flow control to ensure data synchronicity. 2. when the frame is complete, the host should simply stop sending data to the si2401. since the si2401 does not yet recognize the end-of-frame, it expects an extra byte and assert cts as shown in figure 4a. if cts is used to cause a host interrupt, this final interrupt should be ignored by the host. 3. when the si2401 is ready to send the next byte, if it has not yet received any data from the host, it recognizes this as an end-of-frame, raise cts , calculates the final crc code, transmits the code, and begins transmitting stop flags. 4. after transmitting the first stop flag, the si2401 lowers cts, indicating that it is ready to receive the next frame from the host. at this point, the process repeats as in step 1. the method of receiving hd lc frames is as follows: 1. after the call is connected , the si2401 searches for flag data. then, once the first non-flag word is detected, the crc is continuously computed, and the data is sent across the uart (8-bit data or 9-bit data mode) to the host after removing the hdlc zero-bit insertion. the dte rate of the host must be at least as high as that of data transmission. hdlc mode only works with 8-bit data words; the ninth bit is used only for escape on txd and end-of-frame received (eofr) on rxd. 2. when the si2401 detects the stop flag, it sends the last data word in the fram e as well as the two crc bytes and determines if the crc checksum matches. thus, the last two bytes are not frame data but are the crc bytes, which can be discarded by the host. if the checksum matches, the si2401 echoes ?g? (good). if the checksum does not match, the si2401 echoes ?e? (error). additionally, if the si2401 detects an abort (seven or more contiguous ones), it echoes an ?a?. when the ?g?, ?e?, or ?a? (referred to as a frame result word) is sent, the si2401 raises the eofr (end of frame receive) pin (see figure 4b). the gpio1 pin must be configured as eofr by setting se4[3] (gpe) = 1. in addition to using the eofr pin to indicate that the byte is a frame result word, if in 9- bit data mode (set s15[0] (nbe) = 1), the ninth bit is raised if the byte is a frame result word. to program this mode, set s0c[3] (9bf) = 1 and se0[3] (nd) = 1. 3. when the next frame of data is detected, eofr is lowered, and the process repeats at step 1.
si2401/si3008 18 rev. 1.1 to summarize, when receiv ing hdlc frames, the host begins receiving data asynchronously from the si2401. when each byte is received, the host should check the eofr pin (or the ninth bit). if the eofr pin (or the ninth bit) is low, the data is valid frame data. if the eofr pin (or the ninth bit) is high, the data is a frame result word. 4.8. fast connect in modem applications that require fast connection times, it is possible to reduce the length of the handshake. additional modem handshaking control can be adjusted through the registers shown in table 11. these registers are most useful if the user has control of both the originating and answering modems. when the fast connect settings are used, there may be unintended data received initially.the host must tolerate these bytes. 4.9. clock generation subsystem the si2401 contains an on-chip clock generator. using a single master clock input, the si2401 can generate all modem sample rates necessary to support v.22bis, v.22/bell212a, and v.21/bell103 standards and a 9.6 khz rate for audio playback. either a 27 mhz or 4.9152 mhz clock on xtali or a 4.9152 mhz crystal across xtali and xtalo form the master clock for the si2401. this clock source is sent to an internal phase- locked loop (pll) that generates all necessary internal system clocks. the pll has a settling time of ~1 ms. data on rxd should not be sent to the device prior to settling of the pll. by def ault, the si2401 assumes a 4.9152 mhz clock input. if a 27 mhz clock on xtali is used, a pulldown resistor < 10 k must be placed between gpio4 (si2401, pin 11) and gnd. figure 4. hdlc timing b. frame receive a. frame transmit txd rxd start stop start host begins frame n frame n start start stop host finished sending frame n host begins frame n + 1 cts frame n + 1 crc byte 2 stop stop start start stop receive data eofr (or bit 9) si2401 ready for byte 1 of frame n note: figure not to scale. (cts used as normal flow control.) si2401 detects end of frame n. si2401 ready for byte 1 of frame n + 1. crc byte 1 frame result word
si2401/si3008 rev. 1.1 19 table 11. v.22/bell212 handshaking control registers register name function units default fast connect s1e tatl transmit answer tone length 1 s 0x03 00 s1f attd answer tone to transmit delay 5/3 ms 0x2d 00 s20 unl unscrambled ones length?v.22 5/3 ms 0x5d 00 s21 tsod transmit scrambled ones delay?v.22 53.3 ms 0x09 00 s22 tsol transmit scrambled ones length?v.22 5/3 ms 0xa2 00 s23 vddl v.22/22b data delay low 5/3 ms 0xcb 00 s24 vddh v.22/22b data delay high (256) 5/3 ms 0x08 00 s34 tasl answer tone length (only used in s1e [tatl] = 0x00) 5/3 ms 0x5a f0 s35 rsol receive v.22 scramb led ones length 5/3 ms 0xa2 00
si2401/si3008 20 rev. 1.1 5. at command set the controller provides several vital functions including at command parsing, daa control, connect sequence control, dce protocol cont rol, intrusion detection, parallel phone off-hook detection, escape control, caller id control and formatting, ring detect, dtmf control, call progress monitoring, and hdlc framing. the controller also writes to the control registers that configure the modem. virtually all interaction between the host and the modem is done via the controller. the controller uses at (attention) commands and s-registers to configure and control the modem. the modem has two modes of operation: command mode and data mode. the si2401 is asynchronous in both command mode and data mode. the modem is in command mode at powerup, after a reset, before a connection is made, after a connection is dropped, and during a connection after successfully ?escaping? from the data mode back to the command mode using one of the methods previously described. the following section describes the at command set available in command mode. the si2401 supports a subset of the typical modem at command set since it is intended for use with a dedicated microcontroller instead of general terminal applications. at commands begin with the letters at and are followed directly (no space) by the command. these commands are also case-sensitive. all at commands must be entered in upper case including at except w##, r#, m#, q#, and z (wakeup-on-ring). at commands can be divided into two groups: control commands and configuration commands. control commands, such as atd, cause the modem to perform an action (going off-hook and dialing). the value of this type of command is changed at a particular time to perform a particular ac tion. for example, the atdt1234 command causes the modem to go off hook and dial the number, 1234, via dtmf. this action exists only during a connection attempt. no enduring change in the modem configuration exists after the connection or connection attempt has ended. configuration commands change modem characteristics until they are modified or reversed by a subsequent configuration command or the modem is reset. modem configuration status can be determined with the use of ?atsr?? where r is the two- character hexadecimal address of an s-register. a command line is defined as a string of characters starting with at and ending with an end-of-line character, (13 decimal). command lines may contain several commands one after the other. if there are no characters between at and , the modem responds with ?o? after the carriage return. 5.1. command line execution the characters in a command line are executed one-at- a-time. unexpected command characters are ignored, but unexpected data characters may be interpreted incorrectly. after the modem has executed a command line, the result code corresponding to the last command executed is returned to the terminal or host. in addition to the ?ath? and ?atz? commands, the commands that warrant a response (e.g., ?atsr?? or ?ati?) must be the last in the string and followed by a . all other commands may be concatenated on a single line. to echo command line characters, set the si2401 to echo mode using the e1 command. all numeric arguments, including the address and value of an s-register, are in hexidecimal format, and two digits must always be entered. 5.2. end- of-line character this character is typed to end a command line. the value of the character is 13 in decimal, the ascii carriage return character. when the character is entered, the modem executes the commands in the command line. note: commands that do not require a response are exe- cuted immediately and do not need a . table 12. at command set summary command function a answer line immediately with modem dt# tone dial number dp# pulse dial number e local echo on/off h0 go on-hook (hang up modem) h1 go off-hook i chip revision :i interrupt re ad and clear m speaker control options o return online ro v.23 reverse s read/write s-registers w## write s-regi ster in binary r# read s-register in binary m# monitor s-register in binary
si2401/si3008 rev. 1.1 21 5.3. at command set description aa n s w e r the ?a? command makes the modem go off-hook and respond to an incoming ca ll. this command is to be executed after the si2401 has indicated a ring has occurred. (the si2401 indicates an incoming ring by echoing an ?r?.) this command is aborted if any other character is transmitted to the si2401 before the answer process is completed. auto answer mode is entered by setting s00 (nr) to a non-zero value. nr indicates the number of rings before answering the line. upon answering, the modem communicates by whatever protocol has been determined via the modem control registers in s07 (mf1). if no transmit carrier signal is received fr om the calling modem within the time specified in s39 (cdt), the modem hangs up and enters the idle state. dd i a l dt# tone dial number. dp# pulse dial number. the d commands make the modem dial a telephone call according to the digits and dial modifiers in the dial string following the command. a maximum of 64 digits is allowed. a dt command performs tone dialing, and a dp command performs pulse dialing. the ath1 command can be used to go off-hook without detecting a dial tone or dialing. the dial string must contain on ly the digits ?0?9?, ?*?, ?#?, ?a?, ?b?, ?c?, ?d?, or the modifiers ? ; ?, ? / ?, or ? , ?. other characters are interpreted incorrectly. the modifier ? , ? causes a two-second delay (added to the spacing value in s04) in dialing. the modifier ? / ? causes a 125 ms delay (added to the spacing value in s04) in dialing. the modifier ? ; ? returns the device to command mode after dialing and must be the last character. if any character is received by the si2401 between the atdt# (or atdp#) command and when the connection is made (?c? or ?d? is echoed), the extra character is interpreted as an abort, and the si2401 returns to command mode ready to accept at commands. a line feed character immediately following the is treated as an ?extra character? and aborts the call. if the modem does not have to dial (i.e., ?atdt? or ?atdp? with no dial string), the si2401 assumes the call was manually established and attempts to make a connection. 5.3.1. automatic tone/pulse dialing the si2401 can be configured to attempt dtmf dialing and automatically revert to pulse dialing if it determines that the line is not dtmf-cap able. this feature is best explained by the following example: if it is desired that the telephone number, 12345, be dialed, it is normally accomplished through either the atdt12345 or the atdp12345 command. in the force pulse dialing mode of operation, the following string should be issued instead: atdt1,p12345 a result code of ?t,? indicates that the dialing was accomplished using dtmf di aling. if the result code returned is ?tt,?, this indi cates that the dialing was accomplished using pulse dialing. in the above example, the si2401 dials the first digit ?1? using dtmf dialing. the ?,? is used to pause in order to ensure that the central office has had time to accept the dtmf digit ?1?. when the si2401 processes the ?p? command, it attempts to detect a dial tone. if a dial tone is detected, the dtmf digit ?1? was not effective, hence, the line does not support dtmf dialing. conversely, if the dial tone is not detected, the dtmf digit ?1? was effective, and the line supports dtmf dialing. the character after the ?p? may or may not be dialed depending on whether the dtmf digit ?1? was effective or not. if the ?1? was effective (dtmf mode), the character after the ?p? is skipped. the next dtmf digit to be dialed is ?2?. subseque nt digits are all dtmf. if the ?1? was not effective, the firs t character after the ?p? (the ?1?) is pulse dialed, and subsequent digits are all pulse dialed. e command mode echo tells the si2401 whether or not to echo characters sent from the terminal. eo does not echo characters sent from the terminal. e1 echoes characters sent from the terminal. h0 hangup hang up and go into command mode (go offline). q# read s-register in binary v0 result code with no carriage return v1 result code with added carriage returns z software reset z wakeup on ring table 12. at command set summary
si2401/si3008 22 rev. 1.1 h1 off-hook go off-hook. i chip identification this command causes the modem to echo the chip revision for the si2401 device. a = revision a b = revision b c = revision c, etc. i6 display the isomodem ? model number. ?2401? = si2401. :i interrupt read this command causes the isomodem chipset to report the contents of the interrupt status register (s09). the wor, ppd, nld, ri, ocd, and rev bits are also cleared, and the int is deactivated on this read. m speaker on/off options these options are used to control aout for use with a call progress monitor speaker. m0 speaker always off. m1 speaker on until carrier established. the modem sets sf4[3:2] (arl) = 11 and sf4[1:0] (atl) = 11 after a connection is established. m2 speaker always on. m3 speaker on after last digit dialed, off at carrier detect. o return to online mode this command returns the modem to the online mode. it is frequently used after an escape sequence to resume communication with the remote modem. ro turn-around this command initiates a v.23 ?direct turnaround? sequence and returns online. s s register control sr=n write an s register. this command writes the value ?n? to the s-register specified by ?r?. ?r? is a hexidecimal number, and ?n? must also be a hexadecimal number from 00?ff. this command does not wait for a carriage return before taking effect. note: two digits must always be entered for both ?r? and ?n?. sr? read an s register. this command causes the si2401 to echo the value of the s-register specified by r in hex format. r must be a hexidecimal number. note: two digits must always be entered for r. w## write s register in binary this command writes a register in binary format. the first byte following the ?w? is the address in binary format and the second byte is the data in binary format. this is a more rapid method to write registers than the ?sr=n? command and is recommended for use by a host microcontroller. r# read s register in binary this command reads a register in binary format. the byte following the ?r? is the address in binary format. the modem echoes the contents of this register in binary format. this is a more rapid method to read registers than the ?sr?? command and is recommended for use by a host microcontroller. notes: 1. w## and r# are not required to be on separate lines (i.e., no between them). also, the result of an r# is returned immediately without waiting for a at the end of the at command line. 2. once a is encountered, ?at? is again required to begin the next ?at? command. m# monitor s register in binary this command monitors a register in binary format. the byte following the ?m? is the address in binary format. the si2401 constantly trans mits the contents of the register at the set baud rate until a new byte is transmitted to the device. the new byte is ignored and viewed as a stop command. the modem result codes should be disabled (as described above in r#) before using this command. q# read s register in binary this command is exactly the same as the r# command; however, the response from the si2401 is formatted as 0x55 followed by the contents of the register in binary. this guarantees that the register contents are always preceded by 0x55 and allows the result codes to remain enabled. v result code options v0 result codes reported according to table 14. v1 result codes reported with an additional carriage return and line feeds (default). z software reset the ?z? command initiates a software reset causing all registers, with the exceptio n of e0, which controls the dte settings, to default to their powerup value.
si2401/si3008 rev. 1.1 23 the hardware reset pin, reset (si2401, pin 8), is used to reset the si24 01 to factory default settings. z wakeup on ring (lower-case z) the si2401 enters a low-power mode in which the dsp and microcontroller are powered down. in this mode, only the line-side device (si3008) and the isolation capacitor communication link are functional. an incoming ring signal or lin e transient causes the si2401 to power up and echo an ?r?. any character received on the rxd pin also causes the si2401 to exit the wakeup- on-ring state. return from wake-on-ring can also be set to trigger the int pin by setting s08[6] (worm) = 1. 5.4. alarm industry at commands the si2401 supports a complete set of commands necessary for making connec tions in security industry systems. the si2401 is configurable in two modes for these applications. the first mode uses dtmf messaging and is selected with the ?!1? command. the second mode uses fsk transmit with a tone acknowledgement and is selected with ?!2?. the following are a few general comments about the use of ?!? commands. specific details for each command are given below. the first instance of the ?!? must be on the same line as the atdt or atdp command. drt must be set to data mode (se4[5:4] (drt) = 0 b ) before attempting to send tones after a ?!? command. the three data-mode escape sequences (?+++?, ?escape? pin and ?ninth-bit?) only function in ?!2? mode. however, using the ?+++? or ?ninth-bit? is not recommended because characters could be sent to and misinterpreted by the remote modem. only the ?escape pin? (si2401, pin 14) is recommended for use in the ?!2? mode. the ?!1? mode has a special escape provision described below. the at commands for alarm industry applications are described in table 13. 5.4.1. !1 dial number and follow the dtmf security protocol. the format for this command is as follows: atdt!1 k ! k ! k k ! the modem dials the phone number and echoes ?r? (ring), ?b? (busy), and ?c? (connect) as appropriate. ?c? echoes only after the si2401 detects the handshake tone. after a 250 ms delay, the modem sends the dtmf tones containing the first message data and listens for a kissoff tone. if a kissoff tone shorter than or equal to the value stored in s36(ktl) (default = 1 second) is detected, the si2401 echoes a ?k?. a ?k? is echoed if the length of the kissoff tone is longer than the s36(ktl) value. the controller can then send the next message. all messages must be preceded by a ?!? and followed by a and received by the si2401 within 250 ms after the ?k? is echoed. setting s0c[0] (mch) = 1 causes a ?.? to be echoed when the dtmf tone is turned on and a ?/? character to be echoed when the dtmf tone is turned off. this helps the host monitor the status of the message being sent. the previous message can be resent if the host responds with a ?~? after t he si2401 echoes a ?k?. any character other than a ?!? or a ?~? sent to the modem immediately after the ?k? causes the modem to escape to the command mode and remain off-hook. any character except ?!? and ?~? sent during the transmission of a message causes the message to be aborted and the modem to return to the command mode. if the kissoff tone is not received within 1.25 seconds, the modem echoes a ?^?. a ?~ ? from the host causes the last message to be resent. any character other than a ?!? or a ?~? sent to the modem immediately after the ?^? causes the modem to escape to the command mode and remain off-hook. 5.4.2. !2 dial the number and follow the ?sia format? protocol for alarm system communications. the modem dials the phone number and echoes ?r? (ring), ?b? (busy), and ?c? (connect) as appropriate. ?c? echoes only after the si2401 detects the handshake tone and the speed synchronization signal is sent. the signaling is at 300 bps, half -duplex fsk. the host can send the first sia block afte r the ?c? is received. once table 13. at command set extensions for the alarm industry command function !1 dial and switch to dtmf security mode !2 dial and switch to ?sia format? x1 sia half-duplex mode search x2 sia half-duplex return online as transmitter x3 sia half-duplex return online as receiver
si2401/si3008 24 rev. 1.1 the block is transmitted, th e modem can monitor for the acknowledge tone by completing the following sequence: 1. place the si2401 in the command mode by pulsing the escape pin (si2401 pin 14). the ?+++? and ?ninth-bit? escape modes operate in the ?!2? mode but are not recommended because they can send unwanted characters to the remote modem. 2. issue the ?atx1? command to turn the modem transmitter off and begin monitoring for the acknowledgment tones. 3. monitor for a positive (negative) acknowledgment ?p? (?n?) after the tone has been detected for at least 400 ms. 4. the modem, still in comm and mode, can be placed online as a transmitter by issuing the ?atx2? command or as a receiver by issuing the ?atx3? command. if tonal acknowledgement is not used, the host can toggle the escape pin to place the si2401 in the command mode and issue an ?atx2? or an ?atx3? command to reverse data direction. this sequence can be repeated for long messages. 5.5. modem result codes and call progress table 14 shows the modem result codes that can be used in call progress monitoring. all result codes are a single character to speed up communication and ease host processing. table 14. modem result codes command function a british telecom caller id idle tone alert detected b busy tone detected c connect d connect 1200 bps (when pro- grammed as v.22bis modem) f hookswitch flash or battery reversal detected h modem automatically hanging up in !2, !1 i intrusion completed (parallel phone back on-hook) i intrusion detected (parallel phone off- hook on the line) k kissoff tone detected k contact id kissoff tone too long (!1) l phone line detected l no phone line detected m caller id mark signal detected n no carrier detected n no dial tone (time-out set by cw [s02]) o modem ok response r incoming ring signal detected r ringback tone detected t dial tone v connect 75 bps tx (v.23 originate only) x overcurrent state detected after an off-hook event ^ kissoff tone detection required , dialing complete
si2401/si3008 rev. 1.1 25 5.5.1. automatic call progress detection the si2401 has the ability to detect dial, busy, and ringback tones automatically. the following is a description of the algorithms that have been implemented for these three tones. dial tone . the dial tone detector looks for a dial tone after going off-hook and before dialing is initiated. this can be bypassed by enabling blind dialing (set s07[6] (bd) = 1). after going off-hook, the si2401 waits the number of seconds in s01 (dw) before searchin g for the dial tone. in order for a dial tone to be detected, it must be present for the length of time programmed in s1c (dtt). once the dial tone is detected, dialing commences. if a dial tone is not detected within the time programmed in s02 (cw), the si2401 hangs up and echoes an ?n? to the user. busy/ringback tone . after dialing has completed, the si2401 monitors for busy/ringback and modem answer tones. the busy and ringback tone detectors both use the call progress energy detector. the registers that set the cadence for busy and ringback are listed in table 15. si2401 register settings for global cadences for busy and ringback tones are listed in table 16. 5.5.2. manual call progress detection because other call progress tones beyond those described may exist, the si2401 supports manual call progress. this requires the host to read and write the low-level dsp registers an d may require real-time control by the host. manual call progress may be required for detection of a pplication-specific ringback, dial tone, and busy signals. the section on dsp low- level control should be read before attempting manual call progress detection. the call progress biquad filters can be programmed to have a custom frequency response and detection level (as described in ?6. lo w level dsp control? ). four dedicated user-defined frequency detectors can be programmed to search for individual tones. the four detectors have center frequencies that can be set by registers udfd1?4 (see table 18). se5[6] [tdet] [se8 = 0x02] read only definition can be monitored, along with tone, to detect energy at these user- defined frequencies. the default trip-threshold for udfd1?4 is ?43 dbm but can be modified with the dsp register, udfsl. by issuing the ?atdt;? command, the modem goes off- hook and returns to command mode. the user can then put the dsp into call progress monitoring by first setting se8 = 0x02. next, set se5 (dsp2) = 0x00 so no tones are transmitted, and set se6 (dsp3) to the appropriate code, depending on which types of tones are to be detected. table 15. busy and ringback cadence registers register name function units s16 bton busy tone on time 10 ms s17 btof busy tone off time 10 ms s18 btod busy tone delta time 10 ms s19 rton ringback tone on time 53.333 ms s1a rtof ringback tone off time 53.333 ms s1b rtod ringback tone delta time 53.333 ms
si2401/si3008 26 rev. 1.1 at this point, users may program their own algorithm to monitor the detected tones. if the host wishes to dial, it should do so by blind dialing, setting the dial timeout s01 (dw) to 0 seconds, and issuing an ?atdt;? command. this immediately causes the isomodem ? chipset to dial and return to command mode. once the host has detected an answer tone using manual call progress, the host should immediately execute the ?atdt? command in order to make a connection. this causes the si2401 to search for the modem answer tone and begin the correct connect sequence. in manual call progress, the dsp can be programmed to detect specific tones. th e result of the detection is reported in se5 (se8 = 0x2) as explained above. the output is priority-encoded such that if multiple tones are detected, the one with the highest priority whose detection is also enabled is reported (see se5 [se8=02] read only.) in manual call progress, the dsp can be programmed to generate specific tones (see se5[2:0] (tonc) (se8 = 02) write only). for example, setting se5[2:0] (tonc) = 110 b generates the user-defined tone (as indicated by ufrq in table 18) with an amplitude of tgnl. table 17 shows the mappings of si2401 dtmf values, keyboard equivalents, and related dual tones. table 16. si2401 global ringer and busy tone cadence settings country rton rtof rtod bton btof btod s19 s1a s1b s16 s17 s18 china 0x12 0x4b 0x08 0x23 0x23 0x04 hong kong 0x07 0x03 0x01 0x32 0x32 0x05 hungary 0x17 0x46 0x0f 0x1e 0x1e 0x03 india 0x07 0x03 0x01 0x4b 0x4b 0x08 japan, korea 0x12 0x25 0x04 0x32 0x32 0x05 malaysia 0x07 0x03 0x01 0x23 0x41 0x07 mexico 0x12 0x4b 0x08 0x19 0x19 0x03 singapore 0x07 0x03 0x01 0x4b 0x4b 0x08 taiwan 0x12 0x25 0x04 0x32 0x32 0x05 u.s., canada (default) 0 x25 0x4b 0x08 0x32 0x32 0x05 table 17. dtmf values dtmf code keyboard equivalent contact id digit tones low high 0 0 0 941 1336 1 1 1 697 1209 2 2 2 697 1336 3 3 3 697 1477 4 4 4 770 1209 5 5 5 770 1336 6 6 6 770 1477 7 7 7 852 1209 8 8 8 852 1336 9 9 9 852 1477 10 d ? 941 1633 11 * b 941 1209 12 # c 941 1477 13 a d 697 1633 14 b e 770 1633 15 c f 852 1633
si2401/si3008 rev. 1.1 27 6. low level dsp control although not necessary for most applications, the dsp low-level control functions are available for users with very specific applications requiring direct dsp control. 6.1. dsp registers several dsp registers are accessible through the si2401 microcontroller via s-registers se5, se6, and se8. se5 and se6 are used as conduits to write data to specific dsp registers and read status. se8 defines the function of se5 and se6 depending on whether they are being written to or read from. care must be exercised when writing to dsp registers. dsp registers can only be written while the si2401 is on-hook and in the command mode. writing to any register address not listed in tables 18 and 19 or writing out-of-range values is likely to cause the dsp to exhibit unpredictable behavior. the dsp register address is 16-bits wide, and the dsp data field is 14-bits wide. dsp register addresses and data are written in hexadeci mal. to write a value to a dsp register, the register address is written, and then the data is written. when se8 = 0x00, se5(dadl) is written with the low bits [7:0] of the dsp register address, and se6 (dadh) is written with the high bits [15:8] of the dsp address. when se8 = 0x01, se5 (ddl) is written with the low bits [7:0] of the dsp data word corresponding to the previously-written address, and se6 (ddh) is written with the high bits [15:8] of the data word corresponding to the previously- written address. exampl e 1 illustrates the proper procedure for writing to dsp registers. example1: the user would like to program call progress filter coefficient a2_k0 (0x15) to be 309 (0x135). host command: atse8=00se6=00se5=15se8 =01se6=01se5=35se8=00 in this command, atse8=00 sets up registers se5 and se6 as dsp address registers. se6=00 sets the high bits of the address, and se5=15 sets the low bits. se8=01 sets up registers se5 and se6 as dsp data registers for the previously-written dsp address (0x15). se6=01 sets the six high bits of the 14-bit data word, and se5=35 sets the eight low bits of the 14-bit data word.
si2401/si3008 28 rev. 1.1 table 18. low-level dsp parameters dsp reg. addr. name description function default (dec) 0x0002 xmtl daa modem full-sca le transmit level, default = ?10 dbm. level = 20log 10 (xtml/4096) ?10 dbm 4096 0x0003 dtml dtmf high-tone transmit level, default = ?5.5 dbm. level = 20log 10 (dtml/4868) ?5.5 dbm 4868 0x0004 dtmt dtmf twist ratio (low/high), default = ?2 dbm. level = 20log 10 (dtmt/3277) ? 2db 3277 0x0005 ufrq user-defined transmit tone frequency. see register se5 (se8=0x02 (write only)). f = (9600/512) ufrq (hz) 91 0x0006 cpdl call progress detect level (see figure 5), default = ?43 dbm. level = 20log 10 (4096/cpdl) ?43 dbm 4096 0x0007 udfd1 user-defined frequency detector 1. center frequency for detector 1. udfd1 = 8192 cos (2 f/9600) 4987 0x0008 udfd2 user-defined frequency detector 2. center frequency for detector 2. udfd2 = 8192 cos (2 f/9600) 536 0x0009 udfd3 user-defined frequency detector 3. center frequency for detector 3. udfd3 = 8192 cos (2 f/9600) 4987 0x000a udfd4 user-defined frequency detector 4. center frequency for detector 4. udfd4 = 8192 cos (2 f/9600) 536 0x000b tgnl tone generation level associated with tonc (se5 (se8 = 0x02) write only definition), default = ?10 dbm. level = 20log 10 (tgnl/2896) ? 10 dbm 2896 0x000e udfsl sensitivity settin g for udfd1?4 detectors, default = ?43 dbm. sensitivity = 10log 10 (udfsl/ 4096) ?43 dbm 4096 0x0024 conl carrier on level. carrier is valid once it reaches this level. level = 20log 10 (2620/conl) ? 43 dbm 2620 0x0025 cofl carrier off level. carrier is invalid once it falls below this level. level = 20log 10 (3300/cofl) ? 45.5 dbm 3300 0x0026 aonl answer on level. an swer tone is valid once it reaches this level. level = 10log 10 (aonl/107) ? 43 dbm 67 0x0027 aofl answer off level. answer tone is invalid once it falls below this level. level = 10log 10 (aofl/58) ? 45.5 dbm 37
si2401/si3008 rev. 1.1 29 table 19 defines the relationship between se5, se6, and se8. 6.2. call progress filters the programmable call progress filter coefficients are located in dsp address locations 0x0010 through 0x0023. there are two independent 4th order filters, a and b, each consisting of two biquads, for a total of 20 coefficients. coefficients are 14 bits (?8192 to 8191) and are interpreted as, for example, b0 = value/4096, thus giving a floating point value of approximately ?2.0 to 2.0. the output of each biquad is calculated as follows: the output of the filters is input to an energy detector and then compared to a fixed threshold with hysteresis (dsp register cpdl). defaults shown are a bandpass filter from 290?630 hz (?3 db). these registers are located in the dsp and, thus, must be written in the same manner described in ?6.1. dsp registers? . the filters may be configured in either parallel or cascade through se6[6] (cpcd) with se8 = 0x02, and the output of filter b may be squared by selecting se6[7] (cpsq) = 1. figure 5 shows a block diagram of the call progress filter structure. table 19. se5, se6, and se8 relationship se8 se6 se5 r/w name description name description 0x00 w dadh dsp register address bits [15:8] dadl dsp register address bits [7:0] 0x01 w ddh dsp register data bits [15:8] ddl dsp register data bits [7:0] 0x02 r dsp1 7 = dsp data available 6 = tone detected 5=reserved 4:0 = tone type 0x02 w dsp3 7 = enable squaring function 6 = call progress cascade disable 5=reserved 4 = user tone 3 and 4 reporting 3 = user tone 1 and 2 reporting 2 = v.23 tone reporting 1 = answer tone reporting 0 = dtmf tone reporting dsp2 7 = reserved 6:3 = dtmf tone to transmit 2:0 = tone type wn [] k0 x n [] a1 w n 1 ? [] a2 w n 2 ? [] ++ = yn [] wn [] b1 w n 1 ? [] b2 w n 2 ? [] ++ = table 20. call progress filters dsp register address coefficient default (dec) 0x0010 a1_k0 256 0x0011 a1_b1 ?8184 0x0012 a1_b2 4096 0x0013 a1_a1 7737 0x0014 a1_a2 ?3801 0x0015 a2_k0 1236 0x0016 a2_b1 133 0x0017 a2_b2 4096 0x0018 a2_a1 7109 0x0019 a2_a2 ?3565 0x001a b1_k0 256 0x001b b1_b1 ?8184 0x001c b1_b2 4096 0x001d b1_a1 7737 0x001e b1_a2 ?3801 0x001f b2_k0 1236 0x0020 b2_b1 133 0x0021 b2_b2 4096 0x0022 b2_a1 7109 0x0023 b2_a2 ?3565
si2401/si3008 30 rev. 1.1 figure 5. programmable call progress filter architecture filter b 1 0 1 0 1 0 filter a filter input y = x 2 cpsq energy detect cpcd max (a,b) hysteresis a > b? 20log 10 (4096/cpdl) ?43 dbm tdet a b a b cpcd energy detect
si2401/si3008 rev. 1.1 31 7. s registers any register not documented here is reserved and should not be written. bold select ion in bit-mapped registers indicates default values. table 21. s-register summary ?s? register register address (hex) name function reset s00 0x00 nr number of rings before answer; 0 suppresses auto answer. 0x00 s01 0x01 dw number of seconds modem waits before dialing after going off-hook (maximum of 109 seconds). 0x02 s02 0x02 cw number of seconds modem waits for a dial tone before hang-up added to time specified by dw (maximum of 109 seconds). 0x03 s03 0x03 clw duration that the modem waits (53.33 ms units) after loss of carrier before hanging up. 0x0e s04 0x04 td both duration and spacing (5/3 ms units) of dtmf dialed tones. 0x30 s05 0x05 offpd duration of off-hook time (5/3 ms units) for pulse dialing. 0x18 s06 0x06 onpd duration of on-hook time (5/3 ms units) for pulse dialing. 0x24 s07 0x07 mf1 this is a bit-mapped register. * 0x06 s08 0x08 intm this is a bit-mapped register. * 0x00 s09 0x09 ints this is a bit-mapped register. * 0x00 s0c 0x0c mf2 this is a bit-mapped register. * 0x00 s0d 0x0d mf3 this is a bit-mapped register. * 0x00 s0e 0x0e dit pulse dialing interdigit ti me (10 ms units added to a minimum time of 64 ms). 0x46 s0f 0x0f tec ties escape character. default = +. 0x2b s10 0x10 tdt ties delay time (53.33 ms units). 0x13 s11 0x11 ofhi this is a bit-mapped register. * 0x04 s12 0x12 acl absolute current leve l. when s13[4] (ofhd) = 0 b , acl represents the absolute current threshold used by the off-hook intrusion algorithm (1 ma units.) 0x00 s13 0x13 mf4 this is a bit-mapped register. * 0x10 s15 0x15 mlc this is a bit-mapped register. * 0x04 s16 0x16 bton busy tone on. time that the busy tone must be on (10 ms units) for busy tone detector. 0x32 s17 0x17 btof busy tone off. time that the busy tone must be off (10 ms units) for busy tone detector. 0x32 *note: these registers are explained in detail in the following section.
si2401/si3008 32 rev. 1.1 s18 0x18 btod busy tone delta time (10 ms units). a busy tone is detected to be valid if (bton ? btod < on time < bton + btod) and (btof ? btod < off time < btof + btod). 0x0f s19 0x19 rton ringback tone on. time that the ringback tone must be on (53.333 ms units) for ringback tone detector. 0x26 s1a 0x1a rtof ringback tone off. time that the ringback tone must be off (53.333 ms units) for ringback tone detector. 0x4b s1b 0x1b rtod detector time delta (53.333 ms units). a ringback tone is deter- mined to be valid if (rton ? rtod < on time < rton + rtod) and (rtof ? rtod < off time < rtof + rtod). 0x07 s1c 0x1c dtt dial tone detect time. the ti me that the dial tone must be valid before being detected (10 ms units). 0x0a s1e 0x1e tatl transmit answer tone length. answer tone length in seconds when answering a call (1 s units). 0x03 s1f 0x1f arm3 answer tone to transmit delay. delay between answer tone end and transmit data start (5/3 ms units). 0x2d s20 0x20 unl unscrambled ones length. minimum length of time required for detection of unscrambled binary ones during v.22 handshaking by a calling modem (5/3 ms units). 0x5d s21 0x21 tsod transmit scrambled ones delay. time between unscrambled binary one detection and scrambled binary one transmission by a call mode v.22 modem (53.3 ms units). 0x09 s22 0x22 tsol transmit scrambled ones le ngth. length of time scrambled ones are sent by a call mode v.22 modem (5/3 ms units). 0xa2 s23 0x23 vddl v.22x data delay low. delay between handshake complete and data connection for a v.22x call mode modem (5/3 ms units added to the time specified by vddh). 0xcb s24 0x24 vddh v.22x data delay high. delay between handshake complete and data connection for a v.22x call mode modem (256 x 5/3 ms units added to the time specified by vddl). 0x08 s25 0x25 sptl s1 pattern time length. am ount of time the unscrambled s1 pat- tern is sent by a call mode v.22bis modem (5/3 ms units). 0x3c s26 0x26 vtso v.22bis 1200 bps scrambled ones length. minimum length of time for transmission of 1200 bps scrambled binary ones by a call mode v.22bis modem after the end of pattern s1 detection (53.3 ms). 0x0c s27 0x27 vtsol v.22bis 2400 bps scrambled ones length low. minimum length of time for transmission of 2400 bps scrambled binary ones by a call mode v.22bis modem (5/3 ms units). 0x78 table 21. s-register summary (continued) ?s? register register address (hex) name function reset *note: these registers are explained in detail in the following section.
si2401/si3008 rev. 1.1 33 s28 0x28 vtsoh v.22bis 2400 bps scrambled ones length high. minimum length of time for transmission of 2400 bps scrambled binary ones by a call mode v.22bis modem (256 x 5/3 ms units added to the time specified by vtsol). 0x08 s29 0x29 is intrusion suspen d. when s82[2:1] (ib) = 10 b , this register sets the length of time from when dialing begins that the off-hook intrusion algorithm is blocked (suspended) (500 ms units). 0x00 s2a 0x2a rso receive scrambled ones v.22bis (2400 bps) length. minimum length of time requir ed for detection of scrambled binary ones during v.22bis handshaking by the answering modem after s1 pattern conclusion (5/3 ms units). 0xd2 s2b 0x2b dtl v.23 direct turnaround carrier length. minimum length of time that a master mode v.23 modem must detect carrier when searching for a direct turnaround sequence (5/3 ms units). 0x18 s2c 0x2c dtto v.23 direct turnaround timeout. length of time that the modem searches for a direct turnaround carrier (5/3 ms units added to a minimum time of 426.66 ms). 0x08 s2d 0x2d sdl v.23 slave carrier detect loss. minimum length of time that a slave mode v.23 modem must lose carrier before searching for a reverse turnaround sequence (5/3 ms units). 0x0c s2e 0x2e rtct v.23 reverse turnaround carr ier timeout. amount of time a slave mode v.23 modem searches for carriers during potential reverse turnaround sequences (5/3 ms units). 0xf0 s2f 0x2f fcd fsk connection delay low. amount of time delay added between end of answer tone handshake and actual modem connection for fsk modem connections (5/3 ms units). 0x3c s30 0x30 fcdh fsk connection delay high. amount of time delay added between end of answer tone handshake and actual modem con- nection for fsk modem connections (256 x 5/3 ms units). 0x00 s31 0x31 ratl receive answer tone length. minimum length of time required for detection of a ccitt answer tone (5/3 ms units). 0x3c s32 0x32 ocdt the time after going off-hook when the loop current sense bits are checked for overcurrent status (5/3 ms units). 0x0c s34 0x34 tasl answer tone length when answering a call (5/3 ms units). this register is only used if tatl (1e) has a value of zero. 0x5a s35 0x35 rsol receive scrambled ones v.22 length (5/3 ms units). minimum length of time that an originating v.22 (1200 bps) modem must detect 1200 bps scrambled ones during a v.22 handshake. 0xa2 s36 0x36 arm1 second kissoff tone detector length. the security modes, a1 and !1, echo a ?k? if a kissoff tone longer than the value stored in skdtl is detected (10 ms units). 0x30 table 21. s-register summary (continued) ?s? register register address (hex) name function reset *note: these registers are explained in detail in the following section.
si2401/si3008 34 rev. 1.1 s37 0x37 cdr carrier detect return. minimum length of time that a carrier must return and be detected in order to be recognized after a carrier loss is detected (5/3 ms units). 0x20 s39 0x39 cdt carrier detect timeout. amount of time modem waits for carrier detect before aborting call (1 second units). 0x3c s3a 0x3a atd delay between going off-hook and answer tone generation when in answer mode (53.33 ms units). 0x29 s3b 0x3b rp minimum number of consecutive ring pulses per ring burst. 0x03 s3c 0x3c cidg this is a bit mapped register. * 0x01 s62 0x62 rc this is a bit mapped register. * 0x41 s82 0x82 ist this is a bit mapped register. * 0x08 sdb 0xdb lvs line voltage status. eight bit signed, 2s complement number representing the tip-ring voltage. each bit represents 1 volt. polarity of the voltage is represented by the msb (sign bit). 0000_0000 = measured voltage is < 3 v. sdf 0xdf dgsr this is a bit mapped register. * 0x0c se0 0xe0 cf1 this is a bit mapped register. * 0x22 se1 0xe1 gpio1 this is a bit mapped register. * 0x04 se2 0xe2 gpio2 this is a bit mapped register. * 0x00 se3 0xe3 gpd this is a bit mapped register. * 0x00 se4 0xe4 cf5 this is a bit mapped register. * 0x00 se5 0xe5 dadl (se8 = 0x00) write only defin ition. dsp register address lower bits [7:0]. * 0x00 se5 0xe5 ddl (se8 = 0x01) write only defin ition. dsp data word lower bits [7:0]. * 0x00 se5 0xe5 dsp1 (se8 = 0x02) read only definition. this is a bit mapped register. 1 0x00 se5 0xe5 dsp2 (se8 = 0x02) write only definition. this is a bit mapped register. 1 0x00 se6 0xe6 dadh (se8 = 0x00) write only defin ition. dsp register address upper bits [15:8]. 0x00 se6 0xe6 ddh (se8 = 0x01) write only defin ition. dsp data word upper bits [13:8] 0x00 se6 0xe6 dsp3 (se8 = 0x02) write only definition. this is a bit mapped register. 1 0x00 se8 0xe8 dspr4 set the mode to define e5 and e6 for low level dsp control. 0x00 table 21. s-register summary (continued) ?s? register register address (hex) name function reset *note: these registers are explained in detail in the following section.
si2401/si3008 rev. 1.1 35 seb 0xeb tpd this is a bit mapped register. * 0x00 sec 0xec rvc1 this is a bit mapped register. * 0x88 sed 0xed rvc2 this is a bit mapped register. * 0x19 see 0xee rvc3 this is a bit mapped register. * 0x16 sf0 0xf0 daa0 this is a bit mapped register. * 0x40 sf1 0xf1 daa1 this is a bit mapped register. * 0x0c sf2 0xf2 daa2 this is a bit mapped register. * 0x00 sf3 0xf3 daa3 line current status. eight-bit value returning the loop current. each bit represents 1.1 ma of loop current. accuracy is not guaranteed if the loop current is less than required for normal operation. 0x00 sf4 0xf4 daa4 this is a bit mapped register. * 0x0f sf5 0xf5 daa5 this is a bit mapped register. * 0x00 sf6 0xf6 daa6 this is a bit mapped register. * 0xf0 sf7 0xf7 daa7 this is a bit mapped register. * 0x00 sf8 0xf8 daa8 this is a bit mapped register. * ? sf9 0xf9 daa9 this is a bit mapped register. * 0x20 table 21. s-register summary (continued) ?s? register register address (hex) name function reset *note: these registers are explained in detail in the following section.
si2401/si3008 36 rev. 1.1 table 22. bit mapped register summary ?s? register register address (hex) register name bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 default binary s07 0x07 mf1 bd v23r v23t baud ccitt fsk 0000_0110 s08 0x08 intm cdm worm ppdm nvdm rim cidm revm 0000_0000 s09 0x09 ints cd wor ppd nvd ri cid rev 0000_0000 s0c 0x0c mf2 cde cidm[1:0] 9bf bdl mlb 0000_0000 s0d 0x0d mf3 ri intp rbts ehr ehb ehi ehe 0000_0000 s11 0x11 ofhi dcl[3:0] 0000_0100 s13 0x13 mf4 btid ofhd cidb hden 0001_0000 s15 0x15 mlc atpre vcte fhge ehge stb bda[1:0] nbe 0000_0100 s3c 0x3c cidg cidg[2:0] 0000_0001 s62 0x62 rc ocr ir nlr rr 0100_0001 s82 0x82 ist ist[3:0] lcld ib[1:0] 0000_1000 sdf 0xdf dgsr dgsr[6:0] 0000_1100 se0 0xe0 cf1 icts nd sd[2:0] 0010_0010 se1 0xe1 gpio1 gpd5 gpio5 0000_0000 se2 0xe2 gpio2 gpio4[1:0] gpio3[1:0] gpio2[1:0] gpio1[1:0] 0000_0000 se3 0xe3 gpd gpd4 gpd3 gpd2 gpd1 0000_0000 se4 0xe4 cf5 nbck sbck drt gpe 0000_0000 se5 0xe5 dsp1 ddav tdet tone[4:0] 0000_0000 se5 0xe5 dsp2 dtm[3:0] tonc[2:0] 0000_0000 se6 0xe6 dsp3 cpsq cpcd usen2 usen1 v23e anse dtmfe 0000_0000 seb 0xeb tpd pdde 0000_0000 sec 0xec rvc1 rngv rdly[2:0] rcc[2:0] 1000_1000 sed 0xed rvc2 ras[5:0] 0001_1001 see 0xee rvc3 rto[3:0] rmx[3:0] 0001_0110 sf0 0xf0 daa0 foh[1:0] lm[1:0] 0100_0000 sf1 0xf1 daa1 pdn pdl lvfd hbe 0000_1100 sf2 0xf2 daa2 fdt 0000_0000
si2401/si3008 rev. 1.1 37 sf4 0xf4 daa4 arl[1:0] atl[1:0] 0000_1111 sf5 0xf5 daa5 rt 0000_0000 sf8 0xf8 daa8 lrv[3:0] ? sf9 0xf9 daa9 ovl rov 0010_0000 sfc 0xfc daafc ctsm 0000_0000 table 22. bit mapped register summary (continued) ?s? register register address (hex) register name bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 default binary
si2401/si3008 38 rev. 1.1 reset settings = 0000_0110 (0x06) s07 (mf1). modem functions 1 bit d7 d6 d5 d4 d3 d2 d1 d0 name bd v23r v23t baud ccitt fsk type r/w r/w r/w r/w r/w r/w bit name function 7 reserved read returns zero. 6bd blind dialing. 0 = disable. 1 = enable (blind dialing occurs immediately after ?atdt#? command). 5v23r v.23 receive.* v.23 75 bps send/600 (baud = 0) or 1200 (baud = 1) bps receive. 0 = disable. 1 = enable. 4v23t v.23 transmit.* v.23 600 (baud = 0) or 1200 (baud = 1) bps send/75 bps receive. 0 = disable. 1 = enable. 3 reserved read returns zero. 2baud 2400/1200 baud select.* 2400/1200 baud select (v23r = 0 and v23t = 0). 0 = 1200 1 = 2400 600/1200 baud select (v23r = 1 and v23t = 1). 0 = 600 1 = 1200 1 ccitt ccitt/bell mode.* 0 = bell. 1 = ccitt. 0fsk 300 bps fsk.* 0 = disable. 1 = enable. *note: see table 10 on page 13 for proper setting of modem protocols.
si2401/si3008 rev. 1.1 39 reset settings = 0000_0000 (0x00) s08 (intm). interrupt mask bit d7 d6 d5 d4 d3 d2 d1 d0 name cdm worm ppdm nvdm rim cidm revm type r/w r/w r/w r/w r/w r/w r/w r/w bit name function 7cdm carrier dete ct mask. 0 = change in cd does not affect int. 1 = a high to low transition in cd (s09, bit 7) , which indicates loss of carrier, activates int. 6worm wake-on-ring mask. 0 = change in cd does not affect int. 1 = a low to high transition in wor (s09, bit 6) activatesint. 5 ppdm parallel phone detect mask. 0 = change in ppd does not affect int. 1 = a low to high transition in ppd (s09, bit 5) activates int. 4nvdm no phone line detect mask. 0 = change in nld does not affect int. 1 = a low to high transition in nld (s09, bit 4) activates int. 3rim ring indicator mask. 0 = change in ri does not affect int. 1 = a low to high transition in ri (s09, bit 3) activates int. 2cidm caller id mask. 0 = change in cid does not affect int. 1 = a low to high transition in cid (s09, bit 2) activates int. 1 reserved read returns zero. 0revm v.23 reversal detect mask. 0 = change in rev does not affect int. 1 = a low to high transition in rev (s09, bit 0) activates int.
si2401/si3008 40 rev. 1.1 reset settings = 0000_0000 (0x00) s09 (ints). interrupt status bit d7 d6 d5 d4 d3 d2 d1 d0 name cd wor ppd nvd ri cid rev type r/w r/w r/w r/w r/w r/w r/w r/w bit name function 7cd carrier detect (sticky). active high bit indicates carrier detected (equivalent to inverse of cd pin). clears on :1 read. 6wor wake-on-ring (sticky). wake-on-ring has occurred. clears on :i read. 5 ppd parallel phone detect (sticky). parallel phone detected since last off-hook event. clears on :i read. 4nvd no phone line detect (sticky). no line phone detected. clears on :i read. 3ri ring indicator (sticky). active high bit when the si2401 is on-hook, indicates ring event has occurred. clears on :i read. 2cid caller id (sticky). caller id preamble has been detected; data soon follows. clears on :i read. 1 reserved read returns zero. 0rev v.23 reversal detect (sticky). v.23 reversal condition has occurred. clears on :i read.
si2401/si3008 rev. 1.1 41 reset settings = 0000_0000 (0x00) s0c (mf2). modem functions 2 bit d7d6d5d4d3d2d1d0 name cde cidm[1:0] 9bf bdl mlb type r/w r/w r/w r/w r/w bit name function 7 cde carrier detect enable. 0 = disable. 1 = enable gpi02 as an active low carr ier detect pin (must also set se2[3:2] [gpio2] = 01). 6:5 cidm[1:0] caller id monitor. 00 = caller id monitor disabled. 01 = caller id monitor enabled. si2401 must detect channel seizure signal followed by marks in order to report caller id data. (normal bellcore caller id) 10 = reserved. 11 = caller id monitor enabled. si2401 must only detect marks in order to report caller id data. 4 reserved read returns zero. 39bf ninth bit function. only valid if the ninth bit escape is set s15[0] (nbe). 0 = ninth bit equivalent to alert. 1 = ninth bit equivalent to hdlc eofr. 2bdl blind dialing. 0 = blind dialing disabled. 1 = enables blind dialing after dial timeout register s02 (cw) expires. 1mlb modem loopback. 0 = not swapped. 1 = swaps frequency bands in modem algorithm to do a loopback in a test mode. 0 reserved read returns zero.
si2401/si3008 42 rev. 1.1 reset settings = 0000_0000 (0x00) sod (mf3). modem functions 3 bit d7 d6d5d4d3d2d1d0 name ri intp rbts ehr ehb ehi ehe type r/w r/w r/w r/w r/w r/w r/w bit name function 7 reserved read returns zero. 6ri ring indicator control. specifies the functionality of pin3. 0 = pin 3 functions as gpio5 controlled by register se1. 1 = pin 3 functions as ri . ri asserts during a ring and negates when no ring is present. 5intp int polarity. specifies the polarity of the int function on pin 11. 0 = an interrupt forces pin 11 low. 1 = an interrupt forces pin 11 high. 4rbts ringback tone selector. controls the unit step size fo r registers s19, s1a and s1b. 0 = 53.33 ms units. necessary for detecting a ringback tone. 1 = 10 ms units. necessary for detecting a reorder tone. 3ehr enable hangup on reorder. modem is placed on-hook if a ringback or reorder tone is detected. see s0d[4]. 0 = disable. 1 = enable. 2ehb enable hangup on busy. modem is placed on-hook if a busy signal is detected. 0 = disable. 1 = enable. 1ehi enable hangup on intrusion. modem is placed on-hook if parallel intrusion is detected. 0 = disable. 1 = enable. 0ehe enable hangup on escape. modem is placed on-hook if a esc signal is detected. 0 = disable. 1 = enable.
si2401/si3008 rev. 1.1 43 reset settings = 0000_0100 (0x04) reset settings = 0001_0000 (0x10) s11 (ofhi). off-hook intrusion bitd7d6d5d4d3d2d1d0 name dcl[3:0] type r/w bit name function 7:4 reserved read returns zero. 3:0 dcl[3:0] differential current level. differential current level to detect intrusion event (1 ma units). s13 (mf4). modem functions 4 bit d7 d6 d5 d4 d3 d2 d1 d0 name btid ofhd cidb hden type r/w r/w r/w r/w r/w bit name function 7 reserved read returns zero. 6btid bt caller id wetting pulse. 0 = enable. 1 = disable. 5 reserved read returns zero. 4ofhd off-hook intrusion detect method. 0 = absolute. 1 = differential. 3 reserved read returns zero. 2cidb british telecom caller id decode. 0 = disable. 1 = enable. when set, soc[6:5] is overwr itten by the modem, as needed. 1hden hdlc framing. 0 = disable. 1 = enable. 0 reserved read returns zero.
si2401/si3008 44 rev. 1.1 reset settings = 0000_0100 (0x04) s15 (mlc). modem link control bit d7 d6 d5 d4 d3 d2 d1 d0 name atpre vcte fhge ehge stb bda[1:0] nbe type r/w r/w r/w r/w r/w r/w r/w bit name function 7atpre answer tone phase reversal. 0 = disable. 1 = enable answer tone phase reversal. 6vcte v.25 calling tone. 0 = disable. 1 = enable v.25 calling tone. 5fhge 550 hz guardtone. 0 = disable. 1 = enable 550 hz guardtone. 4ehge 1800 hz guardtone. 0 = disable. 1 = enable 1800 hz guardtone. 3stb stop bits. 0 = 1 stop bit. 1 = 2 stop bits. 2:1 bda[1:0] bit data. 00 = 6 bit data. 01 = 7 bit data. 10 = 8 bit data. 11 = 9 bit data. 0nbe ninth bit enable. 0 = disable. 1 = enable ninth bit as escape and ninth bit function (register c).
si2401/si3008 rev. 1.1 45 reset settings = 0000_0001 (0x01) s3c (cidg). caller id gain bit d7 d6 d5 d4 d3 d2 d1 d0 name cidg[2:0] type r/w bit name function 7:3 reserved read returns 0. 2:0 cidg[2:0] caller id gain. the si2401 dynamically sets the on-hook an alog receive gain sf4[6:4] (arg) to cidg during a caller id event (or continuously if s0c[6:5] (cidm = 11 ). this field should be set prior to caller id operation. 000=0db 001=3db 010=6db 011=9db 100 = 12 db
si2401/si3008 46 rev. 1.1 reset settings = 0100_0001 (0x41) s62 (rc). result codes override bitd7d6d5d4d3d2d1d0 name ocr ir nlr rr type r/w r/w r/w r/w bit name function 7 reserved read returns zero. 6ocr overcurrent result code (?x?). 0 = enable. 1 = disable. 5:3 reserved read returns zero. 2ir intrusion resu lt code (? i? and ?i?). 0 = disable. 1 = enable. 1nlr no phone line result code (?l? and ?l?). 0 = disable. 1 = enable. 0rr ring result code (?r?). 0=disable. 1 = enable.
si2401/si3008 rev. 1.1 47 reset settings = 0000_1000 (0x08) s82 (ist). intrusion bitd7d6d5d4d3d2d1d0 name ist[3:0] lcld ib[1:0] type r/w r/w r/w bit name function 7:4 ist[3:0] intrusion settling time. 0000 = ist equals 1 second. delay between when the isomodem ? chipset goes off-hook and the off-hook intrusion algorithm begins (250 ms units). 3lcld loop current loss detect. 0=disable. 1 = enables the reporting of ?i? and ?l? result codes while off-hook. asserts int if gpio4 (se2[7:6]) is enabled as int . 2:1 ib[1:0] intrusion blocking. this feature only works when sdf 0x00. defines the method used to block the off-hook intrusion algorithm from operating after dialing has begun. 00 = no intrusion blocking. 01 = intrusion disabled from start of dial to end of dial. 10 = intrusion disabled from start of dial to register s29 time out. 11 = intrusion disabled from start of dial to ca rrier detect or to ?n? or ?n? result code. 0 reserved read returns zero.
si2401/si3008 48 rev. 1.1 reset settings = 0000_1100 (0x0c) reset settings = 0010_0010 (0x22) sdf (dgsr). intrusion deglitch bitd7d6d5d4d3d2d1d0 name dgsr[6:0] type r/w bit name function 7 reserved read returns zero. 6:0 dgsr[6:0] deglitch sample rate. sets the sample rate for the deglitch algorithm and the off-hook intrusion algorithm (40 ms units). 0000000 = disables the deglitch algorithm, and se ts the off-hook intrusion sample rate to 200 ms and delay between compared samples to 800 ms. se0 (cf1). chip functions 1 bit d7 d6 d5 d4 d3 d2 d1 d0 name icts nd sd[2:0] type r/w r/w r/w bit name function 7:6 reserved read returns zero. 5 icts invert cts pin. 0 = inverted (cts). 1 = normal (cts). 4 reserved read returns zero. 3nd 0 = 8n1. 1 = 9n1 (hardware uart only). 2:0 sd[2:0] serial dividers. 000 = 300 bps serial link. 001 = 1200 bps serial link. 010 = 2400 bps serial link. 011 = 9600 bps serial link. 100 = 19200 bps serial link. 101 = 38400 bps serial link 110 = 115200 bps serial link. 111 = 307200 bps serial link.
si2401/si3008 rev. 1.1 49 reset settings = 0000_0000 (0x04) reset settings = 0000_0000 (0x00) se1 (gpio1). general purpose input/output 1 bitd7d6d5d4d3d2d1 d0 name gpd5 gpio5 type r/w r/w bit name function 7:2 reserved read returns zero. 1gpd5 gpio5 data. data = 0. data = 1. 0gpio5 gpio5. 0 = digital input. 1 = digital output (relay drive). se2 (gpio2). general purpose input/output 2 bitd7d6d5d4d3d2d1d0 name gpio4[1:0] gpio3[1:0] gpio2[1:0] gpio1[1:0] type r/w r/w r/w r/w bit name function 7:6 gpio4[1:0] gpio4. 00 = digital input. 01 = digital output (relay drive). 10 = aout. 11 = int function defined by s08. 5:4 gpio3[1:0] gpio3. 00 = digital input. 01 = digital output (relay drive). 10 = reserved. 11 = esc function (digital input). 3:2 gpio2[1:0] gpio2. 00 = digital input. 01 = digital output (relay drive; also used for cd function). 10 = reserved. 11 = digital input. 1:0 gpio1[1:0] gpio1*. 00 = digital input. 01 = digital output (relay drive). 10 = reserved. 11 = reserved. *note: to be used as a gpio pin; se4[3] (gpe) must equal zero.
si2401/si3008 50 rev. 1.1 reset settings = 0000_0000 (0x00) reset settings = 0000_0000 (0x00) se3 (gpd). gpio data bitd7d6d5d4d3d2d1d0 name gpd4 gpd3 gpd2 gpd1 type r/w r/w r/w r/w bit name function 7:4 reserved read returns zero. 3gpd4 gpio4 data. data = 0 data = 1 2gpd3 gpio3 data. data = 0 data = 1 1gpd2 gpio2 data. data = 0 data = 1 0gpd1 gpio1 data. data = 0 data = 1 se4 (cf5). chip functions 5 bitd7d6d5d4d3d2d1d0 name nbck sbck drt gpe type rrr/w r/w bit name function 7nbck 9600 baud clock (read only). 6 sbck 600 baud clock (read only). 5drt data routing. 0 = data mode, dsp output transmitted to line, line received by dsp input. 1 = loopback mode, txd through microcontroller (dsp) to rxd. 4 reserved read returns zero. 3gpe gpio1 enable. 0 = disable. 1 = enable gpio1 to be hdlc end-of-frame flag. 2:0 reserved read returns zero.
si2401/si3008 rev. 1.1 51 reset settings = 0000_0000 (0x00) se5 (dsp1). (se8 = 0x02) read only definition bitd7d6d5d4d3d2d1d0 name ddav tdet tone[4:0] type rr r bit name function 7 ddav dsp data available. 6tdet tone detected. indicates a tone (any of type 0?25 below) has been detected. 0 = not detected. 1 = detected. 5 reserved read returns zero. 4:0 tone[4:0] tone type detected. when tdet goes high, tone indicates which tone has been detected from the following: tone tone type priority 00000?01111 dtmf 0?15 (dtmfe = 1) 1 see table 17 on page 26. 1 10000 answer tone detected 2100 hz (anse = 1) 2 2 10001 bell 103 answer tone detected 2225 hz (anse = 1) 2 10010 v.23 forward channel mark 1300 hz (v23e = 1) 3 3 10011 v.23 backward channel mark 390 hz (v23e = 1) 3 10100 user defined frequency 1 (usen1 = 1) 4 4 10101 user defined frequency 2 (usen1 = 1) 4 10110 call progress filter a detected 6 10111 user defined frequency 3 (usen2 = 1) 5 5 11000 user defined frequency 4 (usen2 = 1) 5 11001 call progress filter b detected 6 notes: 1. se6[0] (dtmfe) se8 = 0x02. 2. se6[1] (anse) se8 = 0x02. 3. se6[2] (v23e) se8 = 0x02. 4. se6[3] (usen1) se8 = 0x02. 5. se6[4] (usen2) se8 = 0x02.
si2401/si3008 52 rev. 1.1 reset settings = 0000_0000 (0x00) se5 (dsp2). (se8 = 0x02) write only definition bitd7d6d5d4d3d2d1d0 name dtm[3:0] tonc[2:0] type ww bit name function 7 reserved always write this bit to zero. 6:3 dtm[3:0] tone type generated. dtmf tone (0?15) to transmit when selected by tonc = 001. see table 17 on page 26. 2:0 tonc[2:0] dtmf tone selector. tone tone type 000 mute 001 dtmf 010 2225 hz bell mode answer tone with phase reversal 011 2100 hz ccitt mode answer tone with phase reversal 100 2225 hz bell mode answer tone without phase reversal 101 2100 hz ccitt mode answer tone without phase reversal 110 user-defined programmable frequency tone (ufrq) (see table 18 on page 28, default = 1700 hz) 111 1300 hz v.25 calling tone
si2401/si3008 rev. 1.1 53 reset settings = 0000_0000 (0x00) se6 (dsp3). (se8 = 0x02) write only definition bitd7d6d5d4d3d2d1d0 name cpsq cpcd usen2 usen1 v23e anse dtmfe type ww wwwww bit name function 7 cpsq call progress squaring filter. 0 = disable. 1 = enables a squaring function on the output of filter b before the input to a (cascade only). 6cpcd call progress cascade disable. 0 = call progress filter b output is input into call progress filter a. output from fil- ter a is used in the detector. 1 = cascade disabled. two independent fourth order filters available (a and b). the largest output of the two is used in the detector. 5 reserved do not modify. 4usen2 user tone reporting enable 2. 0 = disable. 1 = enable the reporting of user defined frequency tones 3 and 4 through tone. 3usen1 user tone reporting enable 1. 0 = disable. 1 = enable the reporting of user defined frequency tones 1 and 2. 2v23e v.23 tone reporting enable. 0 = disable. 1 = enable the reporting of v.23 tones, 390 hz and 1300 hz. 1anse answering tone reporting enable. 0 = disable. 1 = enable the reporting of answer tones. 0 dtmfe dtmf tone reporting enable. 0 = disable. 1 = enable the reporting of dtmf tones.
si2401/si3008 54 rev. 1.1 reset settings = 0000_0000 (0x00) seb (tpd). timer and powerdown bitd7d6d5d4d3d2d1d0 name pdde type r/w bit name function 7:4 reserved read returns zero. 3 pdde powerdown dsp engine. 0=power on. 1 = powerdown. 2:0 reserved read returns zero.
si2401/si3008 rev. 1.1 55 reset settings = 1000_1000 (0x88) sec (rvc1). ring validation control 1 bitd7d6d5d4d3d2d1d0 name rngv rdly[2:0] rcc[2:0] type r/w r/w r/w bit name function 7rngv ring validation enable. 0 = ring validation feature is disabled. 1 = ring validation feature is enabled in both normal operating mode and low- power mode. 6:4 rdly[2:0] ring delay. these bits set the amount of time between when a ring signal is validated and when a valid ring signal is indicated. rdly[2:0] delay 000 0 ms 001 256 ms 010 512 ms . . . 111 1792 ms 3:1 rcc[2:0] ring confirmation count. these bits set the amount of time that the ri ng frequency must be within the tolerances set by the ras[5:0] bits and the rmx[3:0] bits to be classified as a valid ring signal. rcc[2:0] ring confirmation count time 000 100 m s 001 150 m s 010 200 m s 011 256 m s 100 384 m s 101 512 m s 110 640 m s 111 1024 m s 0 reserved this bit must always be written to zero.
si2401/si3008 56 rev. 1.1 reset settings = 0001_1001 (0x19) sed (rvc2). ring validation control 2 bit d7 d6d5d4d3d2d1d0 name ras[5:0] type r/w bit name function 7:6 reserved read returns zero. 5:0 ras[5:0] ring assertion time. these bits set the minimum ring frequency for a valid ring signal. during ring qualification, a timer is loaded with the ras[5:0] field upo n a tip/ring event and decrements at a reg- ular rate. if a second or subsequent tip/ring event occurs after the timer has timed out, the frequency of the ring is too low, and th e ring is invalidated. the difference between ras[5:0] and rmx[5:0] identifies the minimum duration between tip/ring events to qual- ify as a ring, in binary-coded increments of 2.0 ms (nominal). a tip/ring event typically occurs twice per ring tone period. at 20 hz, tip/ring events would occur every 1/(2 x 20 hz) = 25 ms. to calculate the corr ect ras[5:0] value for a frequency range [f_min, f_max], the following equation should be used: ras[5:0] = 1 / (2 x f_min).
si2401/si3008 rev. 1.1 57 reset settings = 0001_0110 (0x16) see (rvc3). ring va lidation control 3 bit d7 d6d5d4d3d2d1d0 name rto[3:0] rmx[3:0] type r/w r/w bit name function 7:4 rto[3:0] ring timeout. these bits set when a ring signal is determine d to be over after the most recent ring threshold crossing. rto[3:0] ring timeout 0000 80 m s 0001 128 m s 0010 256 m s . . . 1111 1920 m s 3:0 rmx[3:0] ring assertion maximum count. these bits set the maximum ring frequency for a valid ring signal. during ring qualification, a timer is loaded with the ras[5:0] field upo n a tip/ring event and decrements at a reg- ular rate. when a subsequent tip/ring event occurs, the timer value is compared to the rmx[3:0] field, and if it exceeds the value in rmx[3:0], the frequency of the ring is too high, and the ring is invalidated. the differen ce between ras[5:0] and rmx[3:0] identifies the minimum duration between tip/ring events to qualify as a ring, in binary-coded incre- ments of 2.0 ms (nominal). a tip/ring event typically occurs twice per ring tone period. at 20 hz, tip/ring events would occur every 1/(2 x 20 hz) = 25 ms. to calculate the cor- rect rmx[3:0] value for a frequency range [f _min, f_max], the following equation should be used: rmx[3:0] x 2 ms = ras[5:0] ? 2 ms ? (1/(2 x f_max)).
si2401/si3008 58 rev. 1.1 reset settings = 0100_0000 (0x40) sf0 (daa0). daa low level functions 0 bitd7d6d5d4d3d2d1d0 name foh[1:0] lm[1:0] type r/w r/w r/w bit name function 7:6 foh[1:0] fast off-hook selection. these bits determine the length of the off- hook counter. the default setting is 128 ms. 00 = 512 ms 01 = 128 ms 10 = 64 ms 11 = 8 ms 5:2 reserved read returns zero. 1:0 lm[1:0] line mode. these bits determine the line status of the si2401.* 00 = on-hook 01 = off-hook 10 = on-hook line monitor mode 11 = reserved *note: under normal operation, the si2401 internal microcontroller automatically sets these bits appropriately.
si2401/si3008 rev. 1.1 59 reset settings = 0000_1100 (0x0c) sf1 (daa1). daa low level functions 1 bitd7d6d5d4d3d2d1d0 name pdn pdl lvfd hbe type r/w r/w r/w r/w bit name function 7 reserved read returns zero. 6pdn powerdown. 0 = normal operation. 1 = powers down the si2401. 5pdl powerdown line-side chip (typically only used for board level debug.) 0 = normal operation. program the clock generator before clearing this bit. 1 = places the line-side device in lower power mode. 4lvfd line voltage force disable. 0 = normal operation. 1 = the circuitry that forces the lvs register to all 0s at 3 v or less is disabled. this reg- ister may display unpredictable values at voltages between 0 to 2 v. all 0s are displayed if the line voltage is 0 v. 3 reserved do not modify. 2hbe hybrid transmit path connect. 0 = disable. 1=enable. 1:0 reserved do not modify.
si2401/si3008 60 rev. 1.1 reset settings = 0000_0000 (0x00) reset settings = 0000_1111 (0x0f) sf2 (daa2). daa low level functions 2 bitd7d6d5d4d3d2d1d0 name fdt type r bit name function 7:4 reserved read only. 3fdt frame detect (typically only used for board-level debug). 1 = indicates isolation capacitor frame lock has been established. 0 = indicates isolation capacitor frame lock has not been established. 2:0 reserved reserved sf4 (daa4). daa low level functions 4 bitd7d6d5d4d3d2d1d0 name arl[1:0] atl[1:0] type r/w r/w bit name function 7:4 reserved read returns zero. 3:2 arl[1:0] aout receive?path level. daa receive path signal aout gain. 00 = 0db 01 = ?6 db 10 = ?12 db 11 = mute 1:0 atl[1:0] aout transmit?path level. daa transmit path signal aout gain. 00 = ?18 db 01 = ?24 db 10 = ?30 db 11 = mute
si2401/si3008 rev. 1.1 61 reset settings = 0000_0000 (0x00) reset settings vary with line-side revision sf5 (daa5). daa low level functions 5 bitd7d6d5d4d3d2d1d0 name rt type r/w bit name function 7:1 reserved read returns zero. 0rt ringer threshold select. used to satisfy country requirements on ring detection. signals belo w the lower level do not generate a ring detection; signals above the upper level are guaranteed to generated a ring detection. 0 = 13.5 to 16.5 v rms 1 = 19.35 to 23.65 v rms sf8 (daa8). daa low level functions 8 bitd7d6d5d4d3d2d1d0 name lrv[3:0] type r bit name function 7:4 lrv[3:0] line-side device revision number. 1001 = si3008 rev b 3:0 reserved do not modify.
si2401/si3008 62 rev. 1.1 reset settings = 0010_0000 (0x20) reset settings = 0000_0000 (0x00) sf9 (daa9). daa low level functions 9 read only bitd7d6d5d4d3d2d1d0 name ovl rov type rr/w bit name function 7:3 reserved do not modify. 2ovl receive overload. same as rov, except not sticky. 1rov receive overload (sticky). 0 = no excessive level detected. 1 = excessive input level detected. 0 reserved do not modify. sfc (daafc). daa low level functions bitd7d6d5d4d3d2d1d0 name ctsm type r/w bit name function 7ctsm clear-to-send (cts) mode. 0=cts pin is negated as soon as a start bit is detected and reasserted when the transmit fifo is empty. 1=cts pin is negated when the fifo is > 70% full and reasserted when the fifo is < 30% full. 6:0 reserved read returns zero.
si2401/si3008 rev. 1.1 63 8. pin descriptions: si2401 pin # pin name description 1 clkin/xtali xtali?crystal oscillator pin. these pins provide support for parallel resonant at cut crystals. xtali also acts as an input in the event that an external clock source is used in place of a crystal. a 4.9152 mhz crystal is required or a 4.9152 or 27 mhz clock on xtali. 2 xtalo xtalo?crystal oscillator pin. serves as the output of the crystal amplifier. 3 gpi05/ri general purpose input/ri . this pin can be either a gpio pin (digital in, digital out) or the ri pin. default is digital in. when programmed as ri , it indicates the presence of an on segment of a ring signal on the telephone line. 4 v d supply voltage. provides the 3.3 v supply voltage to the si2401. 5 rxd receive data. serial communication data from the si2401. 6 txd transmit data. serial communication data to the si2401. 7 cts clear to send. clear to send output used by the si2401 to signal that the device is ready to receive more digital data on the txd pin. 8 reset reset input. an active low input that is used to reset all control registers to a defined, initialized state. also used to bring the si2401 out of sleep mode. 9 c2a isolation capacitor 2a. connects to one side of the isolation capacitor c2. 10 c1a isolation capacitor 1a. connects to one side of the isolation capacitor c1. 1 2 3 4 5 6 7 8 16 15 14 13 12 11 10 9 clkin/xtali xtalo cts v d txd rxd reset gpio5/ri gpio1/eofr gpio2/cd gpio3/esc v a gnd gpio4/int/aout c1a c2a
si2401/si3008 64 rev. 1.1 11 gpio4/int / aout general purpose input/int . this pin can be either a gpio pin (digital in, digital out) or the int pin. default is digital in. when programmed as int , this pin provides five f unctions. while the modem is connected, it asserts if the carrier is lost, a wake-on ring (using the ?atz? command) event is detected, a loss of loop current event is detected, v.23 reversal is detected, or if an intrusion event has been detected. the int pin is sticky and stays asserted until the host clears it by writing to the co rrect s register. (see register se2[7:6].) 12 gnd ground. connects to the system digital ground. 13 v a regulator voltage reference. this pin connects to an external capacitor an d serves as the reference for the internal voltage regulator. 14 gpio3/esc general purpose input/escape. this pin can be either a gpio pin (digital in, digital out) or the esc pin. default is digi- tal in. when programmed as esc, a positive edge on this pin causes the modem to go from online (connected) mode to the offline (command) mode. 15 gpio2/cd general purpose input/cd . this pin can be either a gpio pin (digital in, digital out) or the cd pin. default is digital in. when programmed as cd , it is the active low carrier detect pin. 16 gpio1/eofr general purpose input/eofr. this pin can be either a gpio pin (digital in , digital out) or the eofr pin. default is digital in. this pin can also be programmed to function as the eofr (end-of-frame receive) signal for hdlc framing. pin # pin name description
si2401/si3008 rev. 1.1 65 9. pin descriptions: si3008 pin # pin name description 1c1b isolation capacitor 1b. connects to one side of isolation capa citor c1 and communicates with the si2401. 2c2b isolation capacitor 2b. connects to one side of isolation capa citor c2 and communicates with the si2401. 3vreg voltage regulator. connects to an external capacitor to provide bypassing for an internal power supply. 4cid caller id. caller id input. 5qe transistor emitter. connects to the emitter of q3. 6qb transistor base. connects to the base of transistor q3. used to go on- and off-hook. 7 dct dc termination. provides dc termination to the telephone network. 8rx receive input. serves as the receive side input from the telephone network. 9ignd isolated ground (exposed pad). connects to ground on the line-side interface. ignd c1b c2b cid rx dct qb 8 1 7 2 6 3 5 4 si3008 qe 9 vreg
si2401/si3008 66 rev. 1.1 10. ordering guide chipset description power supply digital line temperature si2401 commercial lead-free 3.3 v si2401-fs si3008-b-fs 0 to 70 c
si2401/si3008 rev. 1.1 67 11. package outline: 16-pin soic figure 6 illustrates the package details for the si3054 and si3 018. table 23 lists the values for the dimensions shown in the illustration. figure 6. 16-pin small outline integrated circuit (soic) package table 23. package diagram dimensions symbol millimeters min max a1.351.75 a1 .10 .25 b. 3 3. 5 1 c. 1 9. 2 5 d 9.80 10.00 e3 . 8 04 . 0 0 e 1.27 bsc h5 . 8 06 . 2 0 h. 2 5. 5 0 l .40 1.27 0.10 0o 8o aaa 0.25 bbb 0.25 e h a1 b c h l e see detail f detail f a 16 9 8 1 d seating plane -b- b bbb -a- b a c aaa -c-
si2401/si3008 68 rev. 1.1 12. package outline: 8-pin exposed pad soic figure 7 illustrates the package details for the si3008. table 24 lists the values for the dimensions shown in the illustration. figure 7. 8-pin exposed pad small outline integrated circuit (soic) package
si2401/si3008 rev. 1.1 69 table 24. package diagram dimensions dimension millimeters min max a 1.35 1.75 a1 0.00 0.15 a2 1.40 ref 1.55 ref b0.330.51 c0.190.25 d4.805.00 d1 2.14 2.44 e3.804.00 e1 2.14 2.44 e 1.27 bsc h5.806.20 h0.250.50 l0.401.27 0 8 notes: 1. all dimensions shown are in millimeters (mm). 2. dimensioning and tolerancing per ansi y14.5m-1994. 3. recommended card reflow profile is per the jedec/ipc j-std- 020c specification for small body components.
si2401/si3008 70 rev. 1.1 d ocument c hange l ist revision 0.5 to revision 1.0 updated table 2, ?loop characteristics,? on page 4. updated table 4, ?ac characteristics,? on page 6. updated table 7, ?country-specific ptt specifications,? on page 11. updated "12. package outline: 8-pin exposed pad soic" on page 68. revision 1.0 to revision 1.1 updated table 7, ?country-specific ptt specifications,? on page 11. removed brazil listing.
si2401/si3008 rev. 1.1 71 n otes :
si2401/si3008 72 rev. 1.1 c ontact i nformation silicon laboratories inc. 4635 boston lane austin, tx 78735 tel: 1+(512) 416-8500 fax: 1+(512) 416-9669 toll free: 1+(877) 444-3032 email: isoinfo@silabs.com internet: www.silabs.com silicon laboratories, silicon labs, and isomodem are trademarks of silicon laboratories inc. other products or brandnames mentioned herein are trademarks or registered trademarks of their respective holders the information in this document is believed to be accurate in all respects at the time of publ ication but is subject to change without notice. silicon laboratories assumes no responsibility for errors and omissions, and disclaims responsibility for any consequences resu lting from the use of information included herein. additionally, silicon labor atories assumes no responsibility for the functioning of und escribed features or parameters. silicon laboratories reserves the right to make changes without further notice. silicon laboratories makes no wa rranty, rep- resentation or guarantee regarding the suitability of its products for any particular purpose, nor does silicon laboratories as sume any liability arising out of the application or use of any product or circuit, and specifically di sclaims any and all liability, including wi thout limitation conse- quential or incidental damages. silicon laboratories products are not designed, intended, or authorized for use in applications intended to support or sustain life, or for any other application in which the failure of the silicon laboratories product could create a s ituation where per- sonal injury or death may occur. should buyer purchase or us e silicon laboratories products for any such unintended or unauthor ized ap- plication, buyer shall indemnify and hold silicon laboratories harmless against all claims and damages.


▲Up To Search▲   

 
Price & Availability of SI2401FS08-EVB

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X